我試着將字段的defaultvalue屬性設置爲Guid.NewGuid(),但每個創建的項目都具有相同的guid,所以我猜Guid.NewGuid()被存儲爲默認值,而不是每次都運行。我可以將自定義列表的默認值設置爲新的Guid嗎?
實現此目的的唯一方法是將事件處理程序添加到OnAdded列表中?
我試着將字段的defaultvalue屬性設置爲Guid.NewGuid(),但每個創建的項目都具有相同的guid,所以我猜Guid.NewGuid()被存儲爲默認值,而不是每次都運行。我可以將自定義列表的默認值設置爲新的Guid嗎?
實現此目的的唯一方法是將事件處理程序添加到OnAdded列表中?
我假設你正在使用單行文本字段。這種字段的標準默認值始終是常量,您無法通過對象模型分配變量或函數。所做的只是分配函數特定調用的靜態結果。
儘管文本字段可以支持計算的默認值,但它使用與「計算列」中相同的函數,該列不支持隨機數。
最好的辦法是使用事件處理程序,我也會推薦ItemAdding以上的ItemAdded。當然,你將分配給properties.AfterProperties["fieldname"]
而不是field.DefaultValue
。
如果要創建通過代碼領域,並設置field.DefaultValue = Guid.NewGuid(),這將運行Guid.NewGuid()和返回的Guid保存爲默認 它是運行的equlivant如下因素代碼:
Guid newGuid = Guid.NewGuid();
string newGuidString = newGuid.ToString();
field.DefaultValue = newGuidString;
我不知道你可以用它來設置字段的生成上比使用一個事件處理其他項目創建一個新的GUID的任何方法。
它應該是posable gengen隨機數使用field.DefaultValue =「RANDBETWEEN(10,20)」;但我沒有測試過這個