
Untitled
By: a guest on
Jul 1st, 2012 | syntax:
None | size: 0.86 KB | hits: 16 | expires: Never
using System;
using System.Web.Mvc;
using System.Linq;
using NetMovies.Common.Security;
namespace NetMovies.Pandora.WebSite.Helpers.ModelBinders
{
public class DecryptModelBinder : IModelBinder
{
public object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
{
var parameter = bindingContext
.ValueProvider
.GetValue(bindingContext.ModelName);
return IsAnArray(bindingContext.ModelType)
? (object)parameter.AttemptedValue.Split(',').Select(Decrypt).ToArray()
: Decrypt(parameter.AttemptedValue);
}
private bool IsAnArray(Type modelType)
{
return modelType.IsArray;
}
private string Decrypt(string value)
{
return Cripto.DecryptAES(value);
}
}
}