ダッシュを空の文字列でGUIDに置き換えるコードがあります。ダッシュをGUIDから削除することをお勧めしますか?
Replace(System.Guid.NewGuid.ToString, "-", "")
guidの一意性を削除しますか?
誰かもこれを確認できますか?
GUIDをデータベースにchar(32)として格納しています。それは大丈夫ですか?異なるタイムゾーンにいる国際ユーザーがいるため、文字の長さが32を超えることが懸念されます。ありがとう。
ダッシュを空の文字列でGUIDに置き換えるコードがあります。ダッシュをGUIDから削除することをお勧めしますか?
Replace(System.Guid.NewGuid.ToString, "-", "")
guidの一意性を削除しますか?
誰かもこれを確認できますか?
GUIDをデータベースにchar(32)として格納しています。それは大丈夫ですか?異なるタイムゾーンにいる国際ユーザーがいるため、文字の長さが32を超えることが懸念されます。ありがとう。
いいえ、Guidの一意性が保証されています。
ダッシュは読みやすくするためのものです。内部ではGuidは16バイトです。
詳細はMicrosoftとWikipediaです。
public Guid(int a, short b, short c, byte[] d);
public Guid(int a, short b, short c, byte d,
byte e, byte f, byte g, byte h,
byte i, byte
public Guid(uint a, ushort b, ushort c, byte d,
byte e, byte f, byte g, byte h,
byte i, byte j, byte k);
+1、簡単な答え –
戻ってきてくれてありがとうございました。私たちはguidをデータベースにchar(32)として保存しています。国際的なウェブサイトや異なるタイムゾーンのために可能でしょうか?文字の長さは32を超えることができますか? – Salman
ダッシュが同じ場所に常にあるので、いいえ、それは一意性を減らすことはありません:
はあまりにもコンストラクタを見てみましょう。
System.Guid.NewGuid().ToString("N");
はダッシュがGUID自体の一部ではない、このdocumentation
のように、ダッシュなしのGUIDを生成します。それらは単にguidの共通の表現の一部です。したがって、削除によってGuidの値自体は変更されません。
ちょうどそのように、 ' - ' charを置き換える代わりに、GuidのToStringを使用することを知っていますか?単純にNフォーマットを使用してください:System.Guid.NewGuid.ToString( "N") –