sintaxis net mvc cshtml code asp c# asp.net razor .net-4.5 portable-class-library

c# - net - razor mvc



Biblioteca de clases portátil en MVC 4/Razor con Visual Studio 2012 RC? (1)

desde que trabajamos con Visual Studio 2012 RC obtenemos una HttpCompileException cuando usamos una clase de una biblioteca de clases portátil (.net 4.5 y perfil de metro) dentro de una vista de afeitar.

Excepción: (alemán a inglés traducido en google, lo siento)

System.Web.HttpCompileException (0x80004005): c:/Users/user/AppData/Local/Temp/Temporary ASP.NET Files/root/1995167a/126b7c4d/App_Web_index.cshtml.1fbcdbb1.zaniprm5.0.cs(29): error CS0012: The type ''System.Object'' is not in a referenced assembly is defined. Add a reference to the Assembly "System.Runtime, Version = 4.0.0.0, Culture = neutral, PublicKeyToken = b03f5f7f11d50a3a" added. at System.Web.Compilation.AssemblyBuilder.Compile() System.Web.Compilation.BuildProvidersCompiler.PerformBuild() System.Web.Compilation.BuildManager.CompileWebFile(VirtualPath virtualPath) ...

Estructura de la solución:

  • Biblioteca de clases portátil (.net 4.5 y perfil de metro)
    • Usuario de clase pública {...}
  • MVC 4 (.net 4.5)
    • Referencia a la biblioteca de clases portátil
    • Razor-View
      • @model usuario

Dado que Visual Studio 2012 RC agrega referencia "System.Runtime" ya no es posible.


En el archivo Views / Web.config, agregue el siguiente código en la sección <system.web> :

<compilation debug="true" targetFramework="4.5"> <assemblies> <add assembly="System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> </assemblies> </compilation>

Hay muchos otros ensambles a los que también podría tener que hacer referencia, dependiendo de qué tipos esté usando su código portátil. Puede agregar cada uno cuando encuentre el error o agregar la lista completa de ensamblados en C:/Program Files (x86)/Reference Assemblies/Microsoft/Framework/.NETFramework/v4.5/Facades .