例子:我有10个网站,每个网站有5个列表。从站点1开始,我在listX中添加了一个项目,现在id将像"1"一样,并在第4个子站点的listB中创建另一个项目,所以现在id将"2"…所以必须这样继续下去怎么才能做到呢?
我需要更新这与所有列表项目添加的事件?另外,如何获得最新的id?
我已经尝试过这个代码与自定义表单,它的工作很酷,但认为这可能会给并发问题
public static void ID()
{
if ((field.InternalName.Equals("Field1")))
{
{
string template;
using (SPSite site = new SPSite(SPContext.Current.Site.Url))
{
using (SPWeb web = site.RootWeb)
{
template = web.Properties["eydtemplate"].ToString();
}
}
if ("eydadvisory" == template)
{
SPListItemCollection items = _currentList.Items;
if (_currentList.ItemCount == 0)
{
webControl.Field.DefaultValue = (1).ToString();
}
else
{
SPQuery query = new SPQuery();
query.RowLimit = 1;
query.Query = " <OrderBy><FieldRef Name='" + field.InternalName + "' Ascending='FALSE' /></OrderBy>";
webControl.Field.DefaultValue = (Convert.ToInt64(_currentList.GetItems(query).Cast<SPListItem>().FirstOrDefault()[field.InternalName]) + 1).ToString();
}
}
}