업데이트 : J0e3gan은 자신의 프로젝트에서 내 코드를 시험해 보았으므로 미세 조정을 통해 문제가 해결되었으므로 문제는 Visual Studio 자체가 아니라 Visual Studio 자체에서 발생합니다. 코드 또는 마크 업. 새로운 UserControl
을 추가하려고 시도했는데 인식되지도 않았습니다. 그러나 VS는 에 등록 된 AjaxControlToolkit
을 인식하고 있습니다. [/ 업데이트]사용자 정의 UserControl이 ASP.NET에 등록되어 있지 않습니다.
내가 일하고 있어요 사이트에 AdminControls
라는 이름의 사용자 정의 UserControl
를 추가하기 위해 노력하고있어,하지만 다음과 같은 오류가 계속 :
Element 'ControlName' is not a known element. This can occur if there is a compilation error in the Web site, or the web.config file is missing.
내가 비주얼 출마를 Studio Pro 2013 및 프로젝트는 웹 응용 프로그램입니다. 나는 웹에서 스택 오버 플로우에 대한 해결책을 찾아 보았고 찾을 수있는 모든 것을 시도했지만 아무런 운이 없었습니다. 내가 잃어버린 뭔가가있을거야. 여기
는AdminControls
의 마크 업입니다 :
<asp:Table ID="tblAdminControls" runat="server">
<asp:TableRow>
<asp:TableCell style="min-width: 50%;"> </asp:TableCell>
<asp:TableCell style="width: 6em" id="tdCP" runat="server">
<asp:Button Font-Bold="true" Font-Size="Smaller" Font-Overline="false" ID="btnCP"
runat="server" CssClass="Button" Text="Control Panel" />
</asp:TableCell>
<asp:TableCell style="width: 5em">
<asp:Button Font-Bold="true" Font-Size="Smaller" Font-Overline="false" ID="btnLogOut"
runat="server" CssClass="Button" Text="LogOut" />
</asp:TableCell>
</asp:TableRow>
</asp:Table>
그리고 여기에 대한 코드 숨김입니다 :
Public Class AdminControls
Inherits System.Web.UI.UserControl
Private Sub Page_Init(sender As Object, e As EventArgs) Handles Me.Init
If Request.ServerVariables("SCRIPT_NAME") = "/frmAdminCP.aspx" Then
tdCP.Visible = False
End If
End Sub
Private Sub btnCP_Click(sender As Object, e As EventArgs) Handles btnCP.Click
Response.Redirect("frmAdminCP.aspx", False)
End Sub
Private Sub btnLogOut_Click(sender As Object, e As EventArgs) Handles btnLogOut.Click
Session.RemoveAll()
Session.Abandon()
Response.Redirect("frmLogin.aspx", False)
End Sub
End Class
내가 시도한 web.config
파일과 페이지에 AdminControls
모두 등록 . 여기,
<pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID">
<controls>
<add tagPrefix="ajaxToolkit" assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" />
<add tagPrefix="klc" tagName="AdminHeader" src="~/AdminControls.ascx" />
</controls>
</pages>
그리고 마지막으로 내가에 AdminControls
을 넣어 노력하고있어 페이지 중 하나입니다 : 여기에 관련된 web.config
파일에서 비트의 내가 시도
<%@ Page Title="" Language="VB" MasterPageFile="~/MasterPage.master" AutoEventWireup="false"
EnableEventValidation="false" Inherits="ProjectName.frmAdminCP" CodeBehind="frmAdminCP.aspx.vb" %>
<%@ Register TagPrefix="klc" TagName="AdminHeader" Src="~/Controls/AdminControls.ascx" %>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">
<div id="content">
<h1>Admin <span class="pagetitle">Control Panel</span> </h1>
<klc:AdminHeader runat="server" id="ahControls" />
<div>
<h2>Users</h2>
<a href="frmUserList.aspx">View Existing Users</a><br />
<a href="frmUserMod.aspx">Add a New User</a>
<h2>Usage Reports</h2>
<a href="frmReportTrack.aspx">View User Activity Report</a><br />
<a href="frmProjectLog.aspx">View Administrative Log</a>
<h2>Project Management</h2>
<a href="frmProjectList.aspx">View Projects</a><br />
<a href="frmDocManagement.aspx">Manage Project Files</a>
</div>
</div>
</asp:Content>
마다 내가 '해결 그들이 어리석은 것처럼 보였을지라도 만나러왔다. 나는 :
- 스키마 캐시를 제거했습니다.
- 솔루션을 정리하고 다시 작성하십시오.
- Visual Studio를 다시 시작했습니다.
- 내 컴퓨터를 다시 시작했습니다.
- 파일을 하위 디렉토리로 이동했습니다.
- 코드와 마크 업을 잘라내어 동일한 위치에 붙이고 파일을 다시 저장합니다.
빌드 오류가없고 tagPrefix
은 Intellisense 자동 완성 드롭 다운에 표시되지 않습니다.
누구든지 내가 작성한 오류를 볼 수 있습니까? 아니면 아직 시도하지 않은 해결책을 아는 사람이 있습니까? 나는 아직 PC를 통해 검은 수탉을 도살하려하지 않았지만 가까이 가고있다.
사용해 주셔서 감사합니다. 다른 경로는 문제를 해결하기 위해 시도한 여러 가지 시도의 결과입니다. 그것을 잡아 주셔서 감사합니다. 실험 결과에 따르면 문제는 코드 자체가 아니라 Visual Studio에서만 발생합니다. 나는 그것을 반영하기 위해 질문을 업데이트 할 것이다. – FreeRangeOyster