本文整理汇总了C#中IProduct.Init方法的典型用法代码示例。如果您正苦于以下问题:C# IProduct.Init方法的具体用法?C# IProduct.Init怎么用?C# IProduct.Init使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IProduct
的用法示例。
在下文中一共展示了IProduct.Init方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: RegisterProduct
private void RegisterProduct(IProduct product, Assembly assembly)
{
try
{
var productContext = new ProductContext { AssemblyName = assembly.FullName };
product.Init(productContext);
ProductContexts.Add(product.ID, productContext);
WebItemManager.Instance.RegistryItem(product);
if (productContext.GlobalHandler != null)
{
GlobalHandlers.Add(productContext.GlobalHandler);
}
foreach (var module in product.Modules)
{
try
{
if (module.Context != null && module.Context.UserActivityPublishers != null)
{
module.Context.UserActivityPublishers.ForEach(p => p.DoUserActivity += DoUserActivityHandler);
}
if (module.Context != null && module.Context.SearchHandler != null)
{
SearchHandlerManager.Registry(module.Context.SearchHandler);
}
}
catch (Exception exc)
{
log.Error(string.Format("Couldn't load module activity publisher {0}", module.Name), exc);
}
}
if (product.Context.UserActivityPublishers != null)
{
product.Context.UserActivityPublishers.ForEach(p => p.DoUserActivity += DoUserActivityHandler);
}
Products.Add(product);
Products.Sort((p1, p2) => p1.Context.DefaultSortOrder.CompareTo(p2.Context.DefaultSortOrder));
log.DebugFormat("product {0} loaded", product.Name);
}
catch (Exception exc)
{
log.Error(string.Format("Couldn't load product {0}", product.Name), exc);
}
}