2012-04-02 16 views
0

この質問に対する回答をサイトで検索しましたが、これを理解できないようです。Strange Guid.NewGuid()の動作

私はNewGuid()メソッドを何度も使用しており、greateを処理しています。しかし今何らかの理由で空のGuidが作成されます。ここで

は私のコードです:

// Class of the Guid Object 
public class CardUserAccount 
    { 
     // User ID of the user's profile 
     public Guid UserId { get; set; } 
    } 

//Page object where method is called 
Public partial class CreateSale : System.Web.UI.UserControl 
    { 
     // Create the UserProfile object 
     public CardUserAccount profile = new CardUserAccount(); 


    protected void ContinueButton_Click(object sender, EventArgs e) 
    { 
     Guid _userId = Guid.NewGuid(); 
     profile.UserId = _userId; 
    } 

    protected void SubmitButton_Click(object sender, EventArgs e) 
    { 
     // Method to add object to database 
     SubmitProfile(profile); 
    } 

私は、エンティティオブジェクトにオブジェクトを追加するために、エンティティのメソッドに、単純なLINQを呼び出します。

私はそれをダブルチェックして、どこにも上書きしません。

しかし、私はpage_loadメソッドの外でプロファイルオブジェクトを作成していることが問題になる可能性があります。私はこれがポストバック中にオブジェクトに影響しないと思った。

私は助けていただきありがとうございます

+2

現在、あなたはそのGuidで何もしていないので、もう少しコードがうまくいくはずです。多分それは問題ですか? – Pharao2k

+0

ここで続けているプロセスは何ですか?他のイベントで生成されたGUIDを上書きしている可能性があります。 –

答えて

2

このコードは実際のものですか?変数を宣言して初期化するので、何もしないでください。

フィールド値を上書きする場合は、そのフィールドをこのメソッド内に宣言しないでください。

+0

私はほぼ同じことを言っているコメントを作っていました。私はこれを答えだと思っていますが、いくつかのコードが見えるまで推測しています – psubsee2003