【问题标题】:A Namespace Can Not Contain Members命名空间不能包含成员
【发布时间】:2016-01-05 19:12:18
【问题描述】:

我正在尝试设置我的 global.asax 文件来注册路由,但我似乎无法导入我创建的命名空间

<%@ Application Language="C#" %>

<%@ Import Namespace="System" %>
<%@ Import Namespace="System.Web.Routing" %>
<%@ Import Namespace="SportStore.App_Code" %>


<script   runat="server">

    void Application_Start(object sender, EventArgs e) 
    {
        // Code that runs on application startup
        RouteConfig.RegisterRoutes(RouteTable.Routes);
    }

有一个我正在尝试做的事情的副本,但是第三个导入行一直给我一个错误,我会删除它,但如果没有它,编译器会识别我的 RouteConfig 类,任何解决方案都将不胜感激。

这是类的代码

using System.Web;
using System.Web.Routing;

namespace SportStore.App_Code
{

    public class RouteConfig
    {
        public static void RegisterRoutes(RouteCollection routes)
        {
            routes.MapPageRoute(null, "list/{category}/{page}",                "~/Pages/Listing.aspx");
            routes.MapPageRoute(null, "list/{page}", "~/Pages/Listing.aspx");
            routes.MapPageRoute(null, "", "~/Pages/Listing.aspx");

我使用的是预生成的 VS global.asax 文件

【问题讨论】:

  • 也许命名空间只是SportStoreApp_Code 是成员?
  • 试试&lt;%@ Import Namespace="SportStore.App_Code" %&gt;。顺便说一句,app_code 是 ASP.NET 文件夹之一。您实际上是手动创建了该命名空间,还是通过将 c# 文件添加到该文件夹​​(使用自动创建命名空间/类定义的模板)?
  • 摆脱;?很确定它不属于,因为您在技术上不在代码中,而只是给它一个命名空间的名称。
  • Application_Start 需要是 c# 文件中的类。
  • 我在应用程序代码中创建了一个名为 RouteConfig 的类,添加了命名空间,然后添加了方法等等......我还删除了“;”但错误仍然存​​在

标签: asp.net global-asax


【解决方案1】:

好的,我解决了这个问题,命名约定有问题。当我将名称更改为另一个命名空间时,我发现它起作用了,但不知道为什么。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-06
    相关资源
    最近更新 更多