Asp.net mvc 3 Asp.net MVC3从razor视图访问内部类

Asp.net mvc 3 Asp.net MVC3从razor视图访问内部类,asp.net-mvc-3,class,reference,internal,Asp.net Mvc 3,Class,Reference,Internal,这不是一个重复的问题。我已经搜索过了,但我需要一个不同的东西 今天是从Razor视图访问内部类的一种方法,我知道程序集必须是可见的,现在仍然是 默认情况下,无法从视图访问“内部”类中声明的属性或方法。我需要一个方法来覆盖这个 谢谢。在大多数情况下,您可以将类从内部更改为公共。当不需要时,您可以使用 对于使用资源(.resx)文件自动生成的.Designer.cs文件,可以通过在“Designer”视图中打开resx文件将“访问修饰符”更改为“public”: 如果所有这些都失败了,您应该能够使

这不是一个重复的问题。我已经搜索过了,但我需要一个不同的东西

今天是从Razor视图访问内部类的一种方法,我知道程序集必须是可见的,现在仍然是

默认情况下,无法从视图访问“内部”类中声明的属性或方法。我需要一个方法来覆盖这个


谢谢。

在大多数情况下,您可以将类从内部更改为公共。当不需要时,您可以使用

对于使用资源(.resx)文件自动生成的.Designer.cs文件,可以通过在“Designer”视图中打开resx文件将“访问修饰符”更改为“public”:

如果所有这些都失败了,您应该能够使用反射来获得您所需要的。有关详细信息,请参见顶部答案


祝你好运

你为什么要这样做?您正在寻找访问方法/属性吗?这是无关紧要的。默认情况下,无法从视图访问“内部”类中声明的属性或方法。我需要一个方法来覆盖这个。谢谢。我知道总成必须是可见的,现在还没有。您是指
内部可视属性吗?我也有同样的问题。我有一个Constants类,其中存储了所有全局可访问的常量,需要在Razor视图中引用它,但我不想让Constants类对其他程序集可见。有人解决了这个问题吗?似乎很不幸,InternalsVisibleTo对Razor引擎没有帮助,因为它生成了公开模型的公共类运行时。这意味着,无论是否使用InternalsVisible,可访问性级别都将不同,并在Razor中生成编译错误。