我需要将ASP.NET Web表单页面添加到我的ASP.NET API项目中。这是一个旧版应用程序,我还没有时间移植到API和Angular。旧版页面包含多个控件,包括文本框,下拉列表和GridView控件。该Web表单的所有代码逻辑都包含在代码隐藏页面中。
我遇到的问题是,当我尝试重建项目时,无法识别旧版Web窗体中的控件。我收到以下错误
Error CS0103 The name '<name of web control>' does not exist in the current context MyWebApp C:\source_code\MyWebApp\api\services\LegacyWebForm.aspx.cs
对于ASPX页面上的所有服务器端控件,我都会收到这些错误之一。
我非常确定我可以在API应用程序中运行此旧版Web表单,而我要做的就是添加...
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
文件LegacyWebForm.aspx.cs
后面的代码继承自System.Web.UI.Page
,而ASPX页面继承了页面类
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="LegacyWebForm.aspx.cs" Inherits="MyWebApp.api.services.LegacyWebForm" %>
隐藏代码的类名
namespace MyWebApp.api.services
{
public partial class LegacyWebForm : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
...
答案 0 :(得分:1)
您似乎丢失了一个designer
文件。
.aspx.designer.cs
This突出显示了设计师的用法。
您可以regenerate设计器文件。
如果在尝试编译时desiger文件仍然抛出缺少的引用,则可能需要清理项目并重新生成它。