我想在C#中定义User Define Guid。我想在我的Guid对象中插入它:
dddddddddddddddddddddddddddddddd。
当我这样做时:
Guid user = "dddddddddddddddddddddddddddddddd";
我得到的错误:系统无法从String转换为System.Guid。我该怎么办?
答案 0 :(得分:11)
这听起来像你想要的:
Guid user = Guid.Parse("dddddddddddddddddddddddddddddddd");
请注意,再次打印guid时,格式不同:
// Prints dddddddd-dddd-dddd-dddd-dddddddddddd
Console.WriteLine(user);
您可以改为调用Guid(string)
构造函数,但我个人更喜欢调用Parse
方法 - 它更能描述正在发生的事情,它遵循与int.Parse
等相同的约定。另一方面,Guid.Parse
仅在.NET 4中引入 - 如果您使用的是旧版本的.NET,则需要使用构造函数。我相信不同的电话会接受哪些价值观会有所不同,但我不知道细节。
答案 1 :(得分:5)
GUID必须正确格式化为32个字符,并且它也会像这样调用
Guid user = new Guid("aa4e075f-3504-4aab-9b06-9a4104a91cf0");
您还可以生成一个
Guid user = Guid.NewGuid();
答案 2 :(得分:4)
您想使用Guid.Parse:
Guid user = Guid.Parse("dddddddddddddddddddddddddddddddd");
答案 3 :(得分:2)
尝试:
Guid user = new Guid("dddddddddddddddddddddddddddddddd");
希望这有帮助!
N.S。