我有一个简单的界面:
public interface IVisitorsLogController
{
List<VisitorsLog> GetVisitorsLog();
int GetUniqueSubscribersCount();
int GetVisitorsCount();
string GetVisitorsSummary();
}
VisitorLogController 类实现了这个接口。
从控制台应用程序或 TestFixture - 没问题 - 控制台/测试夹具完美编译。
但是,来自同一解决方案中的 Asp.Net 网站(不是应用程序),后面的代码中有此代码
private IVisitorsLogController ctl;
protected int GetUniqueMembersCount()
{
ctl = new VisitorsLogController();
return ctl.GetUniqueSubscribersCount();
}
编译器抛出此异常:
错误 1“WebSiteBusinessRules.Interfaces.IVisitorsLogController”不包含“GetUniqueSubscribersCount”的定义,并且没有扩展方法“GetUniqueSubscribersCount”接受类型为“WebSiteBusinessRules.Interfaces.IVisitorsLogController”的第一个参数(您是否缺少 using 指令或装配参考?)
但是对于同一文件中的此代码:
protected static int GetVisitorsCount()
{
return VisitorsLogController.Instance.GetVisitorsCount(DateTime.Today);
}
编译器编译这些行而不抱怨。事实上,如果我在接口中添加任何新内容,编译器现在会在尝试编译 asp.net 页面时抱怨。
不能缺少 using 指令或程序集引用,否则这两种方法都会失败。
这让我发疯!
请问有什么想法吗?
谢谢,
杰里米