【问题标题】:How to use System.Guid.Parse in framework 3.5如何在 framework 3.5 中使用 System.Guid.Parse
【发布时间】:2011-11-21 03:35:52
【问题描述】:

我正在使用 .Net Framework 4.0 构建我的 BLL,但后来我注意到我需要将它用于 WebServices 应用程序,因此我将 .Net 版本更改为 3.5。现在我有这行代码给我一个错误:

tmp.GlobalIdentifier = Guid.Parse(Convert.ToString(row["GlobalIdentifier"]));

错误是

“System.Guid”不包含“Parse”的定义

这是一个非常明显的错误。您在任何其他类中有任何等效的“解析”方法吗?使用 .Net framework 3.5 将 SQL Server UniqueIdentifier 解析为 System.Guid 对象的最佳方法是什么?

【问题讨论】:

    标签: .net frameworks guid uniqueidentifier


    【解决方案1】:

    试试tmp.GlobalIdentifier = new Guid(Convert.ToString(row["GlobalIdentifier"]))

    Linking MSDN documentation.

    【讨论】:

    • 谢谢,这很有魅力。我看到了一堆针对这个问题的正则表达式解决方案,但我想要更像这样的东西(让 .net 为我做这项工作)。谢谢!
    【解决方案2】:

    您用于存储 SQL Server UniqueIdentifier 的 .NET 类型是什么?

    如果是SqlGuid 结构,你可以使用提供的explicit conversion operator

    tmp.GlobalIdentifier = (Guid)(SqlGuid)row["GlobalIdentifier"];
    

    如果您使用的是Guid 可以接受的字符串,那么您可以只使用接受字符串的Guid 的构造函数重载,正如其他人提到的那样。

    【讨论】:

    • 谢谢阿尼。事实上,我自己并没有在这个表上存储数据,只是检索它,所以我忽略了它是如何完成的。但是,如果机会来了,我肯定会使用它。感谢您的帮助。
    【解决方案3】:
    Guid myGuid = new Guid("B80D56EC-5899-459d-83B4-1AE0BB8418E4");
    

    【讨论】:

      猜你喜欢
      • 2011-11-11
      • 1970-01-01
      • 2011-05-12
      • 2010-11-13
      • 2020-05-14
      • 2014-04-19
      • 1970-01-01
      • 2011-06-27
      • 1970-01-01
      相关资源
      最近更新 更多