【问题标题】:Are runtime code contracts compatible w/ ASP.Net?运行时代码合同是否与 ASP.Net 兼容?
【发布时间】:2011-04-24 23:14:58
【问题描述】:

我正在尝试在 ASP.NET 应用程序 (MVC 3) 中使用代码协定,例如:

public class MyController : Controller
{
    private readonly MyEntities _db;
    public MyController(MyEntities db)
    {
        Contract.Requires<ArgumentNullException>(db != null);
        _db = db;
    }

在项目设置中:

  • 运行时检查:完整
  • 标准合同要求

但在运行时,db 等于 null,我没有得到异常。奇怪,因为控制台中的相同测试确实提供了运行时错误。

ASP.Net、MVC 或 IIS Express 的某些部分是否会禁用运行时契约?

【问题讨论】:

  • 你的抄送设置是什么?也许发布一个屏幕转储
  • 除了下面的答案之外,我们使用 MVC3 的合同,它也可以按预期工作。

标签: asp.net code-contracts


【解决方案1】:

不能用 MVC2 重现。

使用 VS 和 Cassini 运行时,我得到了预期的参数异常。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-05-08
    • 1970-01-01
    • 2015-08-04
    • 2011-02-10
    • 2012-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多