我想在我的应用程序中显示我的应用程序版本号,最简单的方法是使用程序集的版本号。

var assembly = System.Reflection.Assembly.GetExecutingAssembly();
var name = assembly.GetName();
return String.Format("Version {0}.{1}", name.Version.Major, name.Version.Minor);

我可以毫无问题地进行执行组装,但是对GetName()的调用会返回一 strip 有该消息的MethodAccessException


为什么会发生这种情况,我能做些什么,如果没有,我还有其他方法来检索程序集版本吗?

最佳答案

Assembly.GetName带有SecurityCriticalAttribute属性标记,请尝试使用GetCallingAssembly().FullName并从中刮除版本信息。



来自:http://msdn.microsoft.com/en-us/library/9w2wdeze(VS.95).aspx

关于c# - 无法从我的Silverlight应用程序中调用Assembly.GetName(),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7925141/

10-13 07:31