2018年8月10日 星期五

有關於Asp.net開發的小紀錄(CodeBehind 與 CodeFile)

最近在維護客戶的網站專案時,可能會有一個狀況,就是專案在人員異動交接時,導致在版本控制的專案檔案居然不是最新的。這樣會發生一個慘劇。因為公司習慣將Asp.net網站Compile成一個Dll檔案,方便後續的更新與維護。但如果發生原始碼不是最新的版本,有可能在更新時,將導致部分功能的錯誤。造成災難。

因此,針對部分必須要更動的功能,可以將其設定改成CodeFile, 也就是將原始碼.Vb檔案直接放到網站上就可以解決。是這麼簡單沒錯,但是還是會出現錯誤,原因在於

例如:
原來的.aspx設定為

<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="Event.aspx.vb" Inherits="SocialAPPS._Event" %>

如果改成
<%@ Page Language="vb" AutoEventWireup="false" CodeFile="Event.aspx.vb" Inherits="SocialAPPS._Event" %>

會出現Imports錯誤,導致該頁面功能異常。
經過爬文後,發現只要將Inherts的設定改一下就可以了,也就是拿掉類別的名稱,改為

<%@ Page Language="vb" AutoEventWireup="false" CodeFile="Event.aspx.vb" Inherits="_Event" %>

這樣就可以暫時解決問題了。


沒有留言:

張貼留言