2016-11-15 61 views
0

我將一個站點從運行Windows Server 2008 R2 Standard上的IIS 7.5的一臺Web服務器遷移到一臺Windows Server 2012 R2上的IIS 8.5。我目前正在接收下面的消息。我知道System.Security.Claims應該是在mscorlib.dll中,似乎已經到位。我甚至不確定甚至會問這個問題還有什麼幫助,但是如果有人有想法讓我指向正確的方向,那會很棒!謝謝!未找到方法:'Void System.Security.Claims.ClaimsIdentity..ctor(System.Security.Claims.ClaimsIdentity)'

Server Error in '/profile' Application.

Method not found: 'Void System.Security.Claims.ClaimsIdentity..ctor(System.Security.Claims.ClaimsIdentity)'. 

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.MissingMethodException: Method not found: 'Void System.Security.Claims.ClaimsIdentity..ctor(System.Security.Claims.ClaimsIdentity)'.

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below. 

Stack Trace:

[MissingMethodException: Method not found: 'Void System.Security.Claims.ClaimsIdentity..ctor(System.Security.Claims.ClaimsIdentity)'.] 
System.Web.Security.FormsIdentity..ctor(FormsIdentity identity) +0    
System.Web.Security.FormsIdentity.Clone() +35  
System.Security.Principal.GenericPrincipal.AddIdentityWithRoles(IIdentity identity, String[] roles) +57 
System.Web.Security.FormsAuthenticationModule.OnAuthenticate(FormsAuthenticationEventArgs e) +338  
System.Web.Security.FormsAuthenticationModule.OnEnter(Object source, EventArgs eventArgs) +88  
System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() 
+80  
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +161 

Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.6.1069.1

+0

解釋你的應用程序做什麼,描述一個特定的場景,並張貼一些代碼可能會有所幫助。我只知道你在「遷移」你的網站。 –

+0

謝謝。不幸的是,我對它不是很熟悉。我意識到我在這裏抓着稻草。當我嘗試登錄時,會顯示此特定消息。我會看看是否可以挑選出相關的代碼,但其中很多代碼都已編譯,並且我沒有原始代碼。 –

+0

我對它不太熟悉,而且我沒有資料來源。 :) –

回答

0

我能想到的三種原因:

  1. 您錯過了應用程序需要的DLL。可能需要將庫或框架安裝到服務器上。

  2. 也許你的兩臺服務器運行不同版本的.NET框架。檢查兩臺服務器並查看它們具有哪些版本,可以在此MSDN文章中找到所有詳細信息:https://msdn.microsoft.com/en-us/library/hh925568%28v=vs.110%29.aspx

  3. 這可能是安全性/權限問題。嘗試更改IIS中的應用程序池以作爲管理員運行,並且如果問題消失,則是權限問題。

1

我在我們的一個windows 2012 r2服務器中遇到同樣的問題。使用表單標識構建的MVC應用程序拋出錯誤。

我們發現特定的Microsoft更新補丁(KB3098785)導致了此問題。

我們unistalled補丁,重新啓動服務器ANS voila..everything運行良好

相關問題