次のコードがスレッドセーフかどうか疑問に思っていますか?
UniqueFoo
それが実際にUnique Fooになり、オーバーライドされないことを確認できますか?
public partial class Dummy : System.Web.UI.Page
{
public string UniqueFoo{ get; set; }
protected void Page_Load(object sender, EventArgs e)
{
var id = int.Parse(Request["Id"]);
UniqueFoo = SomeThreadSafeWCF.GetUniqueFoo(id);
}
}
次はどうですか(静的)
public partial class Dummy : System.Web.UI.Page
{
public static string UniqueFoo{ get; set; }
protected void Page_Load(object sender, EventArgs e)
{
var id = int.Parse(Request["Id"]);
UniqueFoo = SomeThreadSafeWCF.GetUniqueFoo(id);
}
}
後で使用UniqueFoo
したい[WebMethod]
[WebMethod]
public static void SetSomeObject(SetSomeObject obj)
{
SomeThreadSafeWCF service = new SomeThreadSafeWCF ();
service.SetSomeObject(UniqueFoo, obj);
}
編集:私はSetSomeObject
JS から取得しUniqueFoo
ており、ASP.NET から取得しています。回答によるとstatic
、クラスで を使用しない場合に問題はありますか?Dummy