새 모듈을 추가 할 때까지 내 DNN 웹 사이트가 제대로 작동했습니다. VS 2015 DNN에 새 모듈을 만들고 사이트에 추가하면이 오류가 발생하기 시작했습니다. 모듈의 web.config에서 'System.Web.Razor, Version = 2.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35'또는 해당 종속성 중 하나를로드 할 수 없습니다.
2016-10-05 12:37:38,851 [WIN-8EQ5384ADST][Thread:13][ERROR] DotNetNuke.Services.Exceptions.Exceptions - ~/Default.aspx?tabid=1216&error=An unexpected error has occurred&content=0
System.IO.FileLoadException: Could not load file or assembly 'System.Web.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
File name: 'System.Web.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'
at System.Signature.GetSignature(Void* pCorSig, Int32 cCorSig, RuntimeFieldHandleInternal fieldHandle, IRuntimeMethodInfo methodHandle, RuntimeType declaringType)
at System.Signature..ctor(IRuntimeMethodInfo methodHandle, RuntimeType declaringType)
at System.Reflection.RuntimeConstructorInfo.GetParametersNoCopy()
at System.Reflection.RuntimeConstructorInfo.GetParameters()
at System.Diagnostics.StackTrace.ToString(TraceFormat traceFormat)
at System.Exception.GetStackTrace(Boolean needFileInfo)
at LCE.DNN.Modules.StoreLocator.View.Page_Load(Object sender, EventArgs e)
at System.Web.UI.Control.OnLoad(EventArgs e)
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
WRN: Assembly binding logging is turned OFF.
To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1.
Note: There is some performance penalty associated with assembly bind failure logging.
To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].
나는 아래 참조 :
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Web.WebPages" publicKeyToken="31BF3856AD364E35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Razor" publicKeyToken="31BF3856AD364E35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Razor" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="WebMatrix.Data" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-1.0.0.0" newVersion="1.0.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
그리고 주요 web.config 파일 (웹 사이트 설정 파일)에 System.Web.Razor 관련 아무것도 표시되지 않습니다.
MVC와 DNN을 처음 사용했습니다.이 문제를 해결하기 위해 어떤 안내를받을 수 있습니까?
글쎄, 당신이 중복 바인딩을, 그래서 내가 먼저 고정을 권 해드립니다. 뷰 폴더에 web.config도 있습니다 (DNN이 MVC 프로젝트의 일반 템플릿을 따르는 것으로 가정). 또한,'LCE.DNN.Modules.StoreLocator'가 무엇이든 그것이 이전 버전의 System.Web.Razor를 참조하지 않고 있는지 확인하십시오. –
@TiesonT. 좀 더 간단한 설명을 해줄 수 있습니까?나는 네가 내가 바라는 곳을 정확히 이해하지 못한다. – Jaggi
DNN의 프로젝트 구조에 대해 솔직하게 알지 못합니다. MVN 프로젝트 템플릿에는 DNN이 따라 다니는 경우 사이트 루트에 Views 폴더가 있어야합니다. 그렇지 않다면 걱정할 필요가 없을 것입니다. 'LCE.DNN.Modules.StoreLocator' 모듈에 관해서는 DNN의 내장 부분이 아니라면 참조하는'System.Web.Mvc'의 버전을 알아 내야 할 것입니다. 모듈 (http://www.dnnsoftware.com/community-blog/cid/135155/dotnetnuke-store-locator)이라면 꽤 오래되었으므로 그것이 범인이라고 생각할 것입니다. –