加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

new运算符返回null – C#

发布时间:2020-12-15 04:11:12 所属栏目:百科 来源:网络整理
导读:我有这个代码: public ObjectModel.Path GetPath(int pathid){ var path = this.DbContext.Paths.Find(pathid); var app = GetApplicationById(path.ApplicationId.GetValueOrDefault()); var p = new Path { ApplicationId = path.ApplicationId,Id = path
我有这个代码:
public ObjectModel.Path GetPath(int pathid)
{
    var path = this.DbContext.Paths.Find(pathid);
    var app = GetApplicationById(path.ApplicationId.GetValueOrDefault());

    var p = new Path 
    {
        ApplicationId = path.ApplicationId,Id = path.Id,Password = path.Password,UserName = path.UserName,LocalUrl = string.IsNullOrEmpty(path.LocalUrl) ? null : System.IO.Path.Combine(path.LocalUrl,app.Name)

    };


    return p;
}

变量p始终为null.这怎么可能?

这是我正在谈论的打印屏幕:

我也尝试使用即时窗口我得到了这个:

p不能为空,因为即时创建它的新实例,而其所有属性都不为空.我尝试清理项目,重新启动Windows,以管理员身份打开visual studio,没有任何反应.

知道为什么吗?

该应用程序在.net 4.0,visual studio 2017 v15.2(26430.13)上运行.

解决方法

您的变量不为null.

默认情况下,调试器尝试在重载时显示ToString()方法的内容.在这种情况下,它显示(可能)Uri或FtpUrl值为null.

当你悬停它时,尝试点击变量上的小三角形,然后你会看到变量的全部内容.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读