Какова структура папок для развернутого проекта ASP.NET MVC 3? - PullRequest
1 голос
/ 10 февраля 2012

Я не знаю, какая структура файлов и папок необходима для развертывания приложения MVC 3 на веб-сервере. Я не могу использовать Visual Studio для развертывания, поэтому я пытаюсь создать структуру несколько вручную. Какова структура папок развернутого приложения MVC 3?

Я начал с:

.../appname/
            *.dll
            Web.Config
            App_Data/ # nothing in this directory

Что не сработало. Исключение составляют:

System.IO.FileNotFoundException: не удалось загрузить файл или сборку 'System.Web.Helpers, версия = 1.0.0.0, культура = нейтральная, PublicKeyToken = 31BF3856AD364E35' или одна из ее зависимостей. Система не может найти указанный файл. Имя файла: 'System.Web.Helpers, версия = 1.0.0.0, культура = нейтральная, PublicKeyToken = 31BF3856AD364E35' в System.AppDomain.Load (System.String assemblyString, System.Security.Policy.Evidence AssemblySecurity, Boolean refonly) [0x00047] в /root/iws-snippets/mono-install-scripts/fedora/build/mono-2.10.8 /mcs/class/corlib/System/AppDomain.cs:785 в System.AppDomain.Load (System.String assemblyString) [0x00000] в /root/iws-snippets/mono-install-scripts/fedora/build/mono-2.10.8/mcs/class/corlib/System/AppDomain.cs : 762 at (обертка remoting-invoke-with-check) System.AppDomain: Load (строка) в System.Reflection.Assembly.Load (System.String assemblyString) [0x00000] в /root/iws-snippets/mono-install-scripts/fedora/build/mono-2.10.8/mcs/class/corlib/System.Reflection /Assembly.cs:540 в System.Web.Compilation.BuildManager.LoadAssembly (информация о System.Web.Configuration.AssemblyInfo, System.Collections.Generic.List`1 al) [0x00000] в / root / iws-snippets / mono-install-scripts / fedora / строить / моно-2.10.8 / MCS / класс / System.Web / System.Web.Compilation / BuildManager.cs: 1294 в System.Web.Compilation.BuildManager.GetReferencedAssemblies () [0x000b4] в /root/iws-snippets/mono-install-scripts/fedora/build/mono-2.10.8/mcs/class/System.Web/System.Web/System.Web .Compilation / BuildManager.cs: 1123 в System.Web.Compilation.BuildManager.CallPreStartMethods () [0x00013] в /root/iws-snippets/mono-install-scripts/fedora/build/mono-2.10.8/mcs/class/System.Web/System.Web/System.Web .Compilation / BuildManager.cs: 555

Теперь я переехал на:

.../appname/bin/
               *.dll
               Web.Config
               App_Data/

Но это не так с исключением:

System.Reflection.ReflectionTypeLoadException: классы в модуле не могут быть загружены. в (управляемый оболочкой) System.Reflection.Assembly: GetTypes (System.Reflection.Assembly, bool) в System.Reflection.Assembly.GetExportedTypes () [0x00000] в /root/iws-snippets/mono-install-scripts/fedora/build/mono-2.10.8/mcs/class/corlib/System.Reflection/Assembly.cs : 356 в System.Web.WebPages.ApplicationParts.ResourceAssembly.GetTypes () [0x00000] в: 0 в System.Web.WebPages.ApplicationParts.ApplicationPartRegistry.Register (System.Web.WebPages.ApplicationPart applicationPart, System.Func`1 registerPageAction) [0x00000] в: 0 в System.Web.WebPages.ApplicationParts.ApplicationPartRegistry.Register (System.Web.WebPages.ApplicationPart applicationPart) [0x00000] в: 0 в System.Web.WebPages.ApplicationPart.Register (System.Web.WebPages.ApplicationPart applicationPart) [0x00000] в: 0 в System.Web.WebPages.Administration.SiteAdmin.RegisterAdminModule () [0x00000] в: 0 в System.Web.WebPages.Administration.PreApplicationStartCode.Start () [0x00000] в: 0 в (управляемый оболочкой) System.Reflection.MonoMethod: InternalInvoke (System.Reflection.MonoMethod, объект, объект [], System.Exception &) в System.Reflection.MonoMethod.Invoke (объект System.Object, объект BindingFlags invokeAttr, связыватель System.Reflection.Binder, параметры System.Object [], культура System.Globalization.CultureInfo) [0x000d5] в / root / iws-snippets / mono -install-скрипты / Fedora / сборки / моно-2.10.8 / MCS / класс / corlib / System.Reflection / MonoMethod.cs: 226

Я должен упомянуть, что я пытаюсь выполнить развертывание в mod_mono (Mono работает на Apache - Cent OS 5).Однако вся документация говорит мне, что развертывание - это то же самое, что развертывание стандартного приложения MVC в IIS.Я надеюсь, что структура папок является причиной моих текущих ошибок.У меня есть Web.Helpers в качестве DLL в целевом объекте развертывания.

1 Ответ

4 голосов
/ 10 февраля 2012

Какова структура папок развернутого приложения MVC 3?

Root -
     App_Data - if you are using this folder to store files or db it must be present
     |
     bin - all required assemblies
     |
     web.config
     |
     global.asax
     |
     Views -
           |
           Home
           |
           Shared
           |
           web.config
           |
           _ViewStart.cshtml

Сборка System.Web.Helpers является частью Razor. Убедитесь, что вы установили ASP.NET MVC 3 на свой сервер или bin развертывает , что эта сборка и все ее зависимости присутствуют в папке bin вашего приложения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...