Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# CA1813&x9;避免MVC项目中未密封的属性_C#_Asp.net Mvc - Fatal编程技术网

C# CA1813&x9;避免MVC项目中未密封的属性

C# CA1813&x9;避免MVC项目中未密封的属性,c#,asp.net-mvc,C#,Asp.net Mvc,CA 1813避免在FilterConfig.cs页面(模型视图控制器项目的默认页面)中引发未密封属性代码审阅错误。我已经添加了代码属性用法(根据Microsoft的建议)。但是代码分析仍然报告了这个问题 请建议如何解决这个问题。 请查找下面的代码片段 public class FilterConfig { public static void RegisterGlobalFilters(GlobalFilterCollection filters) {

CA 1813避免在FilterConfig.cs页面(模型视图控制器项目的默认页面)中引发未密封属性代码审阅错误。我已经添加了代码属性用法(根据Microsoft的建议)。但是代码分析仍然报告了这个问题

请建议如何解决这个问题。 请查找下面的代码片段

public class FilterConfig
    {
        public static void RegisterGlobalFilters(GlobalFilterCollection filters)
        {
            filters.Add(new HandleErrorAttribute());
        }

        // The attribute is valid for type-level targets.
        [AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Enum | AttributeTargets.Interface | AttributeTargets.Delegate)]
        public class NoCache : ActionFilterAttribute
        {
            public override void OnResultExecuting(ResultExecutingContext filterContext)
            {
                if (filterContext != null)
                {
                    filterContext.HttpContext.Response.Cache.SetExpires(System.DateTime.UtcNow.AddDays(-1));
                    filterContext.HttpContext.Response.Cache.SetValidUntilExpires(false);
                    filterContext.HttpContext.Response.Cache.SetRevalidation(HttpCacheRevalidation.AllCaches);
                    filterContext.HttpContext.Response.Cache.SetCacheability(HttpCacheability.NoCache);
                    filterContext.HttpContext.Response.Cache.SetNoStore();
                    base.OnResultExecuting(filterContext);
                }
            }
        }
    }
正如在《关于<代码>CA 1813》中所述,避免未密封的属性和错误内容。
sealed
关键字添加到
属性
类中

public sealed class NoCache : ActionFilterAttribute

Microsoft建议密封属性类型或将其抽象化。。你也没做。你也应该给你的类命名
NoCacheAttribute
,但这只是一个命名约定。。。