2010-05-11 75 views
4

我有一個guid值存儲在我的隱藏變量中。 (303427ca-2a5c-df11-a391-005056b73dd7)將字符串值轉換回GUID值

現在我該如何將該隱藏字段的值轉換回GUID值(因爲我要調用的方法需要一個GUID值)。

謝謝。

回答

14

只需使用重載的構造函數:

try 
{ 
    Guid guid = new Guid("{D843D80B-F77D-4655-8A3E-684CC35B26CB}"); 
} 
catch (Exception ex) // There might be a more appropriate exception to catch 
{ 
    // Do something here in case the parsing fails. 
} 
+0

這絕對是最簡單的方法 – espais 2010-05-11 12:25:25

+0

@espais:是的,當我看到事情變得容易時,我有時會害怕。 – ereOn 2010-05-11 12:27:20

+1

值得注意的是,沒有TryParse可用於GUID,因此您可能想要將其封裝在try/catch塊中。 – 2010-05-11 15:39:11

2

的Guid對字符串的GUID的構造函數。

Guid guid = new Guid(myStringGuid); 
2

新的GUID(myHiddenFieldString)

1

我認爲它可以簡單地進行如下:

Guid MyGuid = new Guid(stringValue); 
3

你使它通過將Guid存儲在字符串中,非常容易在攻擊者身上。微不足道的找回分頁文件。將它儲存在Guid中,並用一塊石頭殺死兩隻鳥。

+0

+1非常好的一點 – espais 2010-05-11 12:25:53

0

在.NET4開始,你也可以使用:

Guid myGuid = Guid.Parse(myGuidString); 

編碼的偏好,但有些人覺得這個更直觀的只是一個問題。