Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 为什么这些类属性不会显示在视图中,为什么不能在它们上设置断点?_C#_Asp.net Mvc 3 - Fatal编程技术网

C# 为什么这些类属性不会显示在视图中,为什么不能在它们上设置断点?

C# 为什么这些类属性不会显示在视图中,为什么不能在它们上设置断点?,c#,asp.net-mvc-3,C#,Asp.net Mvc 3,我有一个奇怪的问题,我想不出来。我有一个类似于下面的域对象,有两个自定义getter属性,a在调用时不会在视图中返回任何可见值,b不允许我在它们上设置断点以在执行期间检查它们 注意:关于在自动属性设置器上设置断点还有其他类似的问题-这不是我的问题。我的问题是关于正式声明的get{}属性 下面是我的域模型的外观示例: public class Program : IProgram { public string Code { get; set; } public string Ti

我有一个奇怪的问题,我想不出来。我有一个类似于下面的域对象,有两个自定义getter属性,a在调用时不会在视图中返回任何可见值,b不允许我在它们上设置断点以在执行期间检查它们

注意:关于在自动属性设置器上设置断点还有其他类似的问题-这不是我的问题。我的问题是关于正式声明的get{}属性

下面是我的域模型的外观示例:

public class Program : IProgram
{
    public string Code { get; set; }
    public string Title { get; set; }
    public string StatusCode { get; set; }
    public DateTime StatusDate { get; set; }

    public bool HasCompleted
    {
        get
        {
            return (StatusCode == "A" || StatusCode == "B");
        }
    }

    public string HumanizedStatus
    {
        get
        {
            switch (StatusCode)
            {
                case "0": return "Text for 0"; break;
                case "1": return "Text for 1"; break;
                case "2": return "Text for 2"; break;
                case "3": return "Text for 3"; break;
                case "4": return "Text for 4"; break;
                case "5": return "Text for 5"; break;
                case "A": return "Text for A"; break;
                case "B": return "Text for B"; break;
                case "C": return "Text for C"; break;
                case "D": return "Text for D"; break;
                case "E": return "Text for E"; break;
                case "W": return "Text for W"; break;
                default : return "UNKNOWN"; break;
            }
        }
    }
}
此模型附着到视图模型,该视图模型在视图中呈现为一组表行,如下所示:

@foreach (var program in Model.Programs)
{
    <tr>
        <td>@program.Code</td>
        <td>@program.Title</td>
        <td>@program.StatusDate</td>
        <td>@program.HumanizedStatus</td>
        <td>@program.HasCompleted</td>
    </tr>
}
并在其上设置一个断点,以检查列表中的第一个程序对象,对于HasCompleted,它还返回false,对于HumanizedStatus,返回null。我还尝试手动设置断点,并收到错误消息IntelliSense找不到指定位置。是否仍要设置断点?。即使我选择“是”,它也不会开火

我可以将它们更改为方法,但AutoMapper会抛出一个错误,我可以通过将它们从映射中排除来解决这个问题,但这就是跳过我不应该跳过的环

属性在接口中声明。我使用的是VS2010,MVC3


非常感谢您的帮助

尝试重新启动visual studio并进行清理。如有必要,移除bin和obj文件夹。我认为这与其说是编码问题,不如说是环境问题。你好,瓦利德,谢谢你的建议。不幸的是,我刚刚清理并重建了解决方案,但它仍然跳过了这些断点,并且属性像以前一样返回false和null。真令人沮丧。。。。。。
       if (programs[0].HasCompleted)
        {
            //nop
        }