你调用的对象是空的。在Guid.Parse上

时间:2015-10-06 20:53:45

标签: asp.net c web guid

我的页面加载中有这行代码。

string sId = Request["sId"];
//couple of more initializations
 if (!string.IsNullOrEmpty(sId))
            {
                Guid GuidThingId = Guid.Parse(sId); //line 73
//method continues.

在我的生产日志中,对于某些用户,我在第73行看到Null Exception。 对象引用未设置为对象的实例。

知道发生了什么事吗?

CNC中 通过查看$ Guid.Parse $,我发现它只能在Exceptions下面返回。

// Exceptions:
    //   System.ArgumentNullException:
    //     input is null.
    //
    //   System.FormatException:
    //     input is not in a recognized format.
    //
    //   System.Exception:
    //     An internal type conversion error occurred.

2 个答案:

答案 0 :(得分:1)

使用Guid.TryParse或Guid.TryParseExact尝试。如果您的示例是正确的,那么您的错误可能是内部解析,并且您的字符串可能不是有效的Guid。

答案 1 :(得分:0)

你确定你的格式正确吗?

Guid GuidThingId = new Guid(sId);