Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/266.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Razor在重构后使用模型中自定义类的旧名称_C#_Asp.net Mvc_Razor - Fatal编程技术网

C# Razor在重构后使用模型中自定义类的旧名称

C# Razor在重构后使用模型中自定义类的旧名称,c#,asp.net-mvc,razor,C#,Asp.net Mvc,Razor,我在我的网站上有多个项目,这里暗示的是: Common:包含一个我使用重构重命名的类(比如我将其从OldName重命名为NewName) ViewModels:包含名为MyModel的ViewModel,它的属性类型为OldName,但现在它的类型为NewName 网站:一个带有razor的asp.net mvc4网站,我试图在其中显示一个文本框@Html.EditorFor(model=>model.Town) 当我完成重构后,一切正常,模型中的类型发生了变化,从public OldNam

我在我的网站上有多个项目,这里暗示的是:

  • Common
    :包含一个我使用重构重命名的类(比如我将其从
    OldName
    重命名为
    NewName
  • ViewModels
    :包含名为
    MyModel
    的ViewModel,它的属性类型为
    OldName
    ,但现在它的类型为
    NewName
  • 网站:一个带有razor的asp.net mvc4网站,我试图在其中显示一个文本框
    @Html.EditorFor(model=>model.Town)
当我完成重构后,一切正常,模型中的类型发生了变化,从
public OldName Town{get;set;}
public NewName Town{get;set;}

但是当我运行我的应用程序时,它试图执行razor模板,在该模板中实现了
@Html.EditorFor(model=>model.Town)
,它不断抛出一个异常,说
模型中没有类型“OldName”

我尝试过删除asp.net临时文件、删除bin/debug文件夹、更改涉及的razor模板、重建解决方案、停止服务器并再次尝试所有这些,但都没有效果,我仍然收到相同的错误

在谷歌上也没有找到关于这个的任何信息。。。(但也许我没有键入正确的关键字)

有人知道我如何解决这个问题吗


提前感谢您的帮助

您必须将EditorTemplate中的
模型
类型更改为
NewName
,并将EditorTemplate的实际文件名更改为
NewName.cshtml

非常感谢!我怎么没看到。。。。实际上,我还不得不在几个文件中将
@model Common.OldName
重命名为
@model Common.NewName
,重构似乎并没有改变这一点。不管怎样,你的回答解决了问题,谢谢again@ppetrov没问题!您可以看到,如果您忘记在视图中执行此操作,ReSharper会立即抛出一个错误。我喜欢它的众多原因之一。听说过,但从未使用过,但如果它显示出这种东西,我可能会尝试一下!