2012-09-06 78 views
2

我有我的MVC3剃刀的EditorFor HTML幫助查看如下:MissingMethodException對視圖模型類型變更後的Razor視圖

@Html.EditorFor(x => x.RouteOfReferral, 
       MVC.Shared.Views.EditorTemplates.TabValidationMessage, 
       new { 
         ValidationPropertyName = ogt.PropertyName(
         x => x.RouteOfReferral) 
        } 
       ) 

在實體,我改變了屬性的類型從一個參考的數據類型到另一個,更新視圖模型來反映這一點,跑了我所有的測試,並通過了所有。

然而,當我去通過UI頁面時,我得到這個異常:

System.MissingMethodException 
Method not found:'MyProject.Entities.ReferenceData.Entity.RouteOfReferral 
MyProject.Entities.ReferenceData.Entity.get_RouteOfReferral()'. 

奇怪的是,我註釋掉HTML幫手,刷新頁面,並如常開放。然後,我取消了HTML幫助程序的註釋並重新打開了像往常一樣的頁面,從此以後就沒事了。

問題是,現在我已經部署到集成測試平臺,發生了同樣的問題。

任何想法?

回答

0

我很驚訝這4年沒有答案。我自己也遇到了同樣的問題,這是Google的最佳答案。

幸運的是,我有答案 - 清除你的臨時ASP.net文件。

您可以使用這一行的PowerShell:

Get-ChildItem 「C:\Windows\Microsoft.NET\Framework*\v*\Temporary ASP.NET Files」 -Recurse | Remove-Item -Recurse 

或任何方法詳細here

請記住,在具有64位應用程序的64位系統中,臨時文件將位於C:\WINDOWS\Microsoft.NET\Framework64\...文件夾中,而不是C:\WINDOWS\Microsoft.NET\Framework\...文件夾。