我已经在其他代码上做到了这一点,并且工作正常,但是由于某些原因,在VStudio 2017中的新项目上,我无法从c#代码后面的asp / html中引用变量。然后,我使用about.aspx从它开始了一个新的测试空白ASP Web项目,同样的事情请参见下面的代码,我不知道为什么它不起作用。我得到的“ teststring”在当前上下文消息中不存在,但是确实存在。我在这里完全错过了什么吗?
ASP/HTML
<%@ Page Title="About" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="About.aspx.cs" Inherits="TestApp.About" %>
<asp:Content ID="BodyContent" ContentPlaceHolderID="MainContent" runat="server">
<h2><%: Title %>.</h2>
<h3>Your application description page.</h3>
<p>Use this area to provide additional information.</p>
<%=teststring %>
</asp:Content>
C#
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace TestApp
{
public partial class About : Page
{
public string teststring;
protected void Page_Load(object sender, EventArgs e)
{
teststring = "test";
}
}
}
答案 0 :(得分:2)
在ASPX顶部的<@ Page ...>
标记处,将属性Inherits="TestApp.About"
的值更改为Inherits="TestApp_About"
。下划线而不是点/句点。我能够重现问题。