Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.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
Asp.net mvc 3 HiddenInput(DisplayValue=false)在一台dev机器上工作,但在另一台机器上不工作_Asp.net Mvc 3_Entity Framework_Hidden Field - Fatal编程技术网

Asp.net mvc 3 HiddenInput(DisplayValue=false)在一台dev机器上工作,但在另一台机器上不工作

Asp.net mvc 3 HiddenInput(DisplayValue=false)在一台dev机器上工作,但在另一台机器上不工作,asp.net-mvc-3,entity-framework,hidden-field,Asp.net Mvc 3,Entity Framework,Hidden Field,*已解决,请参阅下面的更新 我有一个具有以下两个属性的类: [HiddenInput(DisplayValue = false)] public int ProductId { get; set; } [Required(ErrorMessage = "Please enter a product name")] public string Name { get; set; } 当我在一台机器上运行解决方案时,当我导航到相关页面时,我看不到EditorFor ProductId——当我在另一

*已解决,请参阅下面的更新

我有一个具有以下两个属性的类:

[HiddenInput(DisplayValue = false)]
public int ProductId { get; set; }

[Required(ErrorMessage = "Please enter a product name")]
public string Name { get; set; }
当我在一台机器上运行解决方案时,当我导航到相关页面时,我看不到EditorFor ProductId——当我在另一台机器上运行它时(与从github运行时相同),我确实看到了它(并且能够编辑它)。我不想看到它

我认为每台机器上唯一有意义的不同之处是实际的数据库本身

为什么在使用相同代码时,我可以在一台机器上看到ProductId属性编辑器,而在另一台机器上看不到

注意

MVC在每台机器上呈现不同的视图(生成的HTML不同-这反映了上述差异)

更新


解决了这个问题,请参见下面我的答案

找到了答案。有点

奇怪的是,在尝试继续一段时间后,我在应用程序的其他地方遇到了另一个问题。这个问题和詹姆斯先生对最初问题的评论让我想到了这一点


为了简单起见,我刚刚从给我带来问题的机器上卸载了MVC4(我没有在另一台机器上安装MVC4),我的两个问题都消失了。

我遇到了一个类似的问题,我在模型中的类中添加了
[HiddenInput(DisplayValue=false)]
注释。该模型是我的MVC项目中的一个独立项目。为了获得注释,我必须包含对
System.Web.Mvc
的引用,但我包含了v。4.0.0.0,而我的MVC项目是v。3.0.0.0

这导致注释无法工作,即使所有项目都将编译,并且所有其他功能保持不变


我通过编辑模型项目的.csproj文件修复了这个问题,将包含的引用的版本从4.0.0.0切换到3.0.0.0。这也可以通过删除对错误版本的引用并重新添加正确的版本来实现。

我刚刚遇到了一个与同事非常相似的问题,但是在MVC4中。我们安装了不同版本的框架。这在MVC3中不太可能,但可能值得一试。很可能,你们其中一个安装了预发行版吗?@James先生一台机器安装了MVC4,而另一台只是安装了MVC3。我认为当解决方案本身直接从一台机器复制到另一台机器时,这不会导致任何问题。不,这不应该。我们发行的是不同版本的MVC4,“4.0.20126.16343”和“4.0.20505.0”。抱歉,我只是想排除这个问题。为什么不使用
@html.hiddenFor(x=>x.productId)
而不是
editorFor
@Zachdev,因为我不必。它在一台机器上工作,为什么不期望它在其他地方工作呢?