[英]How to compile asp.net website project as case sensitive?
最近,我已經將我的ASP.Net網站轉換為ASP.Net Web應用程序
由於這是一個巨大的項目,所以我得到了無與倫比的錯誤
最近的一個是區分大小寫的問題
當我嘗試編譯時,它將作為不區分大小寫的變量進行編譯,因此不會發生任何問題
但是在運行時,它區分大小寫,因此發生“ 發現不明確的匹配 ”錯誤
在運行環境中發生匹配之前,我如何掃描整個項目以查找此類匹配? 泰
首先,asp.net Web窗體控件ID區分大小寫,因為它們充當相應服務器控件的訪問標識符。 關聯的html客戶端ID使用此處描述的邏輯生成。
如果我猜對了,那是您通過復制粘貼方法而不是發布來部署網站。 轉換后,您不再可以復制粘貼項目,而必須將其發布(因為它是一個Web應用程序)
出現運行時錯誤的原因是,頁面指令后面有許多代碼指向同一局部類。 為了給您一個想法,請說您擁有PageA.aspx
和PageB.aspx
。 您的項目Partial Class PageA
和Partial Class PageB
上應該有兩個不同的類。 您必須檢查所有頁面指令,以指向文件后面的正確代碼,該代碼應指向正確的文件和類。
例:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="PageA.aspx.cs"
Inherits="PageA" %>
和
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="PageB.aspx.cs"
Inherits="PageB" %>
當網站作為整個項目的復制粘貼部署在服務器上時,這不會影響運行時,因為每個頁面都是經過精心編譯的。
部署已發布的Web應用程序時,所有庫都預先存在於bin文件夾中,因此所產生的庫文件中存在不明確的定義。 因此,在運行時,會出現此錯誤。
我希望這能解決您的問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.