【问题标题】:Unable to call App_Code class from a code-behind无法从代码隐藏调用 App_Code 类
【发布时间】:2012-12-21 17:10:57
【问题描述】:

我在“App_Code”文件夹中的文件中有一个类。我可以在“aspx”文件中使用它,但不能从代码隐藏文件中使用。如何使其对代码隐藏可见?

注意:这是 Mono 上的 ASP.Net,我直接编写类,而不是使用 IDE 编译它们

我的文件:

ASPX 文件 (testappcode.aspx)

<%@ Page language="c#" src="TestAppCode.aspx.cs" Inherits="TestAppCode.TestAppCode" AutoEventWireup="true" %>
<html>
  <head>
    <title>Test App_Code Folder</title>
  </head>
  <body>
    <form id="contactForm" runat="server">
    <asp:TextBox id="Name" runat="server" ></asp:TextBox>
    <asp:TextBox id="Age" runat="server" ></asp:TextBox>
    <asp:Button ID="Submit" runat="server" Text="Submit" onclick="SubmitForm" />
    </form>
  </body>
<html>

代码隐藏 (TestAppCode.aspx.cs)

using System;
using System.Web.UI.WebControls;

namespace TestAppCode
{
    public class TestAppCode : System.Web.UI.Page
    {
    protected void SubmitForm(object sender, EventArgs e)
    {
        //It fails here with the error: CS0246: The type or namespace name
        //`MyAppCodeClass' could not be found. Are you missing a using
        //directive or an assembly reference?
        MyAppCodeClass m = new MyAppCodeClass();
    }
    }
}

APP_CODE CLASS (App_Code/MyAppCodeClass.cs)

public class MyAppCodeClass
{
         public MyAppCodeClass() {}
}

我尝试给它一个命名空间,但这并不能解决问题。

【问题讨论】:

标签: asp.net mono code-behind app-code


【解决方案1】:

将您的班级的Build Action 更改为编译。

【讨论】:

  • 谢谢。我实际上是手动编写它们(不使用 VS 或 MonoDevelop),所以手动编译类并将其放入“bin”文件夹中也有同样的效果。
  • 感谢您提供此信息。它拯救了我的一天!
  • 极好的信息。节省大量时间
猜你喜欢
  • 2011-06-27
  • 2012-05-26
  • 1970-01-01
  • 1970-01-01
  • 2011-06-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多