在visual studio 2003开发环境下,写一个程序的时候遇到了这个错误:
D:wwwzysgGoogleSitemaps.aspx.cs(121): 可访问性不一致: 参数类型“zysg.site.Freq”比方法“zysg.site.SiteMapFeedGenerator.WriteItem(string, zysg.site.Freq)”的访问性低。
因为没有安装MSDN,只能在网上寻找答案,居然没有搜索到资料。最后还是根据自己的思路尝试来解决了问题。
因为在aspnet环境下,对变量的访问权限设置的比较严格,至少比php以前的版本要严格(php4以前的版本提供设置,但是不严格要求)
出错的环境是这样的,在一个命名空间下,定义了一个eunm枚举类型,然后在一个函数中引用它。
定义是这样的
enum Freq
{
always,
hourly,
daily ,
weekly ,
monthly ,
yearly ,
never
}
这样子直接引用是出错的。
问题的解决是加了一个可访问性的定义:
public enum Freq
{
这样便ok了。