0

有没有办法强制一个类只在 ASP.NET 中使用?这样它就不能在 WinForm 应用程序中被引用或在实例化时抛出异常。为此目的是否有某种 .NET 类属性?

4

3 回答 3

1

不!!!

public class WebOnly
{
    public WebOnly()
    {
        if (HttpContext.Current == null)
            throw new Exception("me needs web");
    }
}
于 2011-03-18T21:53:37.513 回答
0

internal访问修饰符允许类/方法只能在同一个程序集中使用。

只要设置了应用程序/Web 应用程序的部署,以便您希望保护的类位于 Web 应用程序的单独程序集中,就无法访​​问该类。

于 2011-03-18T21:54:04.450 回答
0

考虑使用面向方面的编程技术。

PostSharp的解决方案:

控制对象可见性——有时内部和私有关键字是不够的。限制哪些命名空间、程序集或类型可以引用成员或实现接口。

于 2015-03-16T17:08:27.823 回答