如何在3.5框架中使用System.Guid.Parse函数

8
我一开始使用的是 .Net Framework 4.0 来构建我的 BLL,但后来发现需要用于 WebServices 应用程序,所以我将 .Net 版本更改为 3.5。现在,我有这行代码会出现错误:
tmp.GlobalIdentifier = Guid.Parse(Convert.ToString(row["GlobalIdentifier"]));
报错信息是:
'System.Guid' 不包含 'Parse' 的定义
这是一个非常明显的错误。您是否知道其他类中是否有相当于 "Parse" 方法的等效方法?使用 .Net framework 3.5,将 SQL Server UniqueIdentifier 转换为 System.Guid 对象的最佳方法是什么?
3个回答

21

请尝试执行以下代码: tmp.GlobalIdentifier = new Guid(Convert.ToString(row["GlobalIdentifier"]))

链接到MSDN文档。


1
谢谢,这个方法非常有效。我看到了很多正则表达式的解决方案,但我更喜欢像这样的方法(让 .net 帮我完成工作)。非常感谢! - Hanlet Escaño

5
Guid myGuid = new Guid("B80D56EC-5899-459d-83B4-1AE0BB8418E4");

1

您正在使用哪种.NET类型来存储SQL Server的UniqueIdentifier?

如果是SqlGuid结构体,您可以直接使用提供的显式转换运算符

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

如果您正在使用一个可以被Guid接受的字符串,那么您可以直接使用接受字符串的Guid构造函数重载,正如其他人所提到的。


非常感谢你,Ani。实际上,我自己并不在这个表格中存储数据,只是检索它,所以我不知道它是如何完成的。但是,如果有机会的话,我一定会使用它。感谢你的帮助。 - Hanlet Escaño

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接