0

Я создаю приложение asp.net mvc 4 для замены набора существующих проектов , включая веб-сайт и формы windows asp.net 3.5.проблемы Интеграция сайта asp.net в приложение asp.net mvc 4

Я потратил много месяцев на разработку приложения asp.net mvc 4 с нуля и . Я сосредоточился на применении форм для окон.

Теперь я пытаюсь интегрировать сайт asp.net 3.5 .... На данный момент я просто пытаюсь загрузить , чтобы добавить сайт в проект. Я искал, как это сделать, и я вижу большую часть того, что мне нужно ... но у меня есть несколько проблем.

Я использую области. Для области Carrier (где применяется веб-сайт) я добавил папку с именем aspnet ... и я добавил веб-страницы и другой код в эту папку .... Все это компилируется.

Я также изменил файл RoutConfig.Cs, добавив эту строку: routes.IgnoreRoute ("{resource} .aspx/{* pathInfo}");

Когда я добавил веб-страниц для проекта я добавил только код, игнорируя файлы проекта и web.config для веб-сайта asp.net .....

Я не думаю, что мне нужно для конвертирования над файлами проекта вообще ... но я пытаясь понять, что делать с web.config .... Я знаю, что могу иметь web.config в папке aspnet .... но что вставить в мой вопрос .....

Я попытался просто скопировать существующий файл, но у него возникли проблемы с другой версией .net (сайт v3.5, а приложение mvc - v4.0 , net) ....

Моя большая проблема заключается в том, как справиться с безопасностью ... на веб-сайте используется проверка подлинности форм безопасности , а приложение mvc использует simpleMembership.

Все показания я сделал сосредоточены на преобразовании asp.net веб-приложений, не сайты к MVC ..... и большинство из них не говорит о файле web.config ....

Я также не нашел, что делать с безопасностью ... снова я видел некоторые вещи по интеграции модели безопасности MVC обратно в существующее веб-приложение asp.net, , но ничего не стоит на том, как получить asp. net website работает с mvc simplemembership.

help !!

+0

Упомяните, пожалуйста, ваша конкретная проблема? что вы пробовали? Post Some Code –

+0

Моя проблема заключается в том, что нужно изменить, чтобы получить сайт asp.net, работающий в приложении asp.net mvc .... Я думаю, что это просто web.config ..... Я работаю на этом сейчас .... пытаясь выяснить, что нужно добавить ... – user2040849

+0

Я был очень смущен .... Я искал некоторые общие рекомендации о том, как установить сайт asp.net в существующий asp.net mvc-приложение, поскольку я ничего не мог найти об этом .... получается, что моя проблема была не asp.net .... но контроль devexpress ... Я до сих пор не решил проблему, но теперь я знаю достаточно, чтобы работать на решение .... спасибо всем, кто нашел время, чтобы прочитать это. – user2040849

ответ

0

Оба веб-формы и MVC используют аутентификацию форм для обеспечения безопасности. Различаются используемые поставщики членства/ролей. Веб-формы традиционно используют поставщиков ASP.NET по умолчанию, тогда как MVC теперь использует поставщиков SimpleMembership. Вот настройки в web.config для настройки поставщиков SimpleMembership.

<system.web> 
<compilation debug="true" targetFramework="4.5" /> 
<httpRuntime targetFramework="4.5" /> 
<authentication mode="Forms"> 
    <forms loginUrl="~/Account/Login" timeout="2880" /> 
</authentication> 
<roleManager enabled="true" defaultProvider="SimpleRoleProvider"> 
    <providers> 
    <clear/> 
    <add name="SimpleRoleProvider" type="WebMatrix.WebData.SimpleRoleProvider, WebMatrix.WebData"/> 
    </providers> 
</roleManager> 
<membership defaultProvider="SimpleMembershipProvider"> 
    <providers> 
    <clear/> 
    <add name="SimpleMembershipProvider" type="WebMatrix.WebData.SimpleMembershipProvider, WebMatrix.WebData" /> 
    </providers> 
</membership> 
</system.web> 

Обратите внимание, что вы настраиваете аутентификацию форм так же, как и веб-формы. Основное отличие заключается в том, чтобы установить роль и членский состав в SimpleRoleProvider и SimpleMembershipProvider соответственно. Вам нужно будет включить сборку WebMatrix.WebData в свои ссылки. SimpleMembership сначала использует EF-код, поэтому инициализация базы данных при запуске приложения имеет решающее значение.Прочтите эту статью по адресу seeding and customizing SimpleMembership, которая даст вам несколько советов о том, как вы можете решить инициализацию базы данных в своем приложении. Существует проект с открытым исходным кодом под названием SimpleSecurity, который отделяет SimpleMembership от приложения, что упростит его включение в ваш проект и обеспечивает простой вызов метода для его инициализации. Вы можете read more about it here.

Смежные вопросы