コード例 #1
0
        protected override void ExecuteRead(INodePluginReadContext pluginReadContext)
        {
            Dictionary <string, object> result = new Dictionary <string, object>();
            var roleList = pluginReadContext.ProcessingContext.InputModel.SecurityModel.Roles;

            string operationName = pluginReadContext.Evaluate("operation").Value?.ToString()?.Replace("'", string.Empty).ToLower() ?? string.Empty;
            IIntroContentProvider contentProvider = GetContentProvider(pluginReadContext);

            switch (operationName)
            {
            case "nav":
            {
                result.Add("intro", contentProvider.LoadMenu(pluginReadContext));
                break;
            }

            case "view":
            {
                result.Add("intro", contentProvider.LoadIntroItem(pluginReadContext));
                break;
            }

            case "admin":
            {
                result.Add("intro", contentProvider.LoadDeletedIntroItem(pluginReadContext));
                break;
            }

            default:
            {
                throw new Exception("Operation not supported or operation parameter not supplied");
            }
            }

            pluginReadContext.Results.Add(result);
        }
コード例 #2
0
 protected abstract object Read(INodePluginReadContext pr);
コード例 #3
0
ファイル: NodePluginBase.cs プロジェクト: rdimovski/CoreKraft
 protected abstract void ExecuteRead(INodePluginReadContext pr);