Я пытаюсь применить внедрение зависимостей с помощью Autofac
или Ninject
, но в итоге проверка на стороне клиента не работает.
Вот мой интерфейс:
public interface IPersonRepository
{
IQueryable<Person> Persons { get; }
}
А вот и модель:
class EFPersonRepository : IPersonRepository
{
private readonly Context _context;
public EFPersonRepository(Context context)
{
_context = context;
}
public IQueryable<Person> Persons
{
get { return _context.Persons; }
}
}
А вот и контроллер:
public class PersonController : Controller
{
private readonly IPersonRepository _personRepository;
public PersonController(IPersonRepository personRepository)
{
_personRepository = personRepository;
}
public ActionResult Create()
{
var person=new Person();
return View(person);
}
}
Запуск приложения:
protected void Application_Start()
{
// ApplyDependeny();
AreaRegistration.RegisterAllAreas();
RegisterGlobalFilters(GlobalFilters.Filters);
RegisterRoutes(RouteTable.Routes);
}
private void ApplyDependeny()
{
var context = new Context();
var builder = new ContainerBuilder();
builder.RegisterControllers(Assembly.GetExecutingAssembly());
builder.RegisterModule(new DependencyInjector(context));
DependencyResolver.SetResolver(new AutofacDependencyResolver(builder.Build()));
}
Ссылки на стороне клиента:
<script src="@Url.Content("~/Scripts/jquery-1.5.1.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/modernizr-1.7.min.js")" type="text/javascript"></script>
web.config:
<add key="ClientValidationEnabled" value="true"/>
<add key="UnobtrusiveJavaScriptEnabled" value="true"/>
Но проверка не работает.