Android Studio
在这一行:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Optimization;
using System.Web.Routing;
namespace Bloggers_Area
{
public class MvcApplication : System.Web.HttpApplication
{
public static object Filters { get; private set; }
public static void RegisterGlobalFilters(GlobalFilterCollection fiters)
{
Filters.Add(new HandleErrorAttribute());
}
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{pathInfo}");
routes.MapRoute(
"Default", // Route Name
"{controller}//{action}/{id}", //URL with parameters
new { Controller = "Login", action = "Login", id = UrlParameter.Optional } // Parameter Deafults
);
}
protected void Application_Start()
{
RegisterGlobalFilters(GlobalFilters.Filters);
RegisterRoutes(RouteTable.Routes);
}
}
}
它一直在说
'对象'不包含'添加'的定义没有延伸 方法'添加'接受类型'对象'的第一个参数。可能 找到。
有人可以帮忙吗?
答案 0 :(得分:0)
目前,在您的方法RegisterGlobalFilters
中,您引用属于Filters
的属性object
。相反,您应该引用类型为filters
的方法参数f
(从小写GlobalFilterCollection
开始):
public static void RegisterGlobalFilters(GlobalFilterCollection fiters)
{
// lowercase f in line below
filters.Add(new HandleErrorAttribute());
}
答案 1 :(得分:0)
嗯,您声明的属性类型为object
:
public static object Filters { get; private set; }
对object
方法Add
确实是does not contain a definition。正如错误所说,你不能称之为不存在的方法。
也许您打算在传递给方法的filters
上调用它?:
filters.Add(new HandleErrorAttribute());
在这种情况下,您可能还可以完全删除Filters
属性,因为没有任何内容可以使用它。