是的,這是默認行爲。活動實例可以是可以咬你的miltithreaded環境(web上下文)中的同一個實例。所以爲了安全起見,您應該始終將所有活動變量作爲參數。參數通過ActivityContext傳遞,對於每個活動實例都是不同的。
public class CustomActivity : Activity
{
public int Age { get; set; }
protected override void Execute(CodeActivityContext context)
{
//do some work with Age
}
}
由於不同的線程可以設置/得到相同的實例變量,而不是上面的代碼,你應該這樣做:
public class CustomActivity : Activity
{
public InOutArgument<int> Age { get; set; }
protected override void Execute(CodeActivityContext context)
{
//do some work with Age within CodeActivityContext
}
}
怎麼樣通過國際奧委會注入的依賴? –
通過ctor注入的@MhaihaiBejenariu值將被存儲在成員屬性(獨立於上下文)上,所以IOC也不能解決問題。 – rovsen
對不起,我的問題是模糊的。我正在使用Unity,並且我有一個類成員:[Dependency] MyLogic。在這種情況下,MyLogic仍然是一個單身人士。我怎樣才能使注入的MyLogic類在每個上下文中被實例化? –