Visual Web Developer 2008 Express 環境で正しくコンパイルおよび実行されるものと、Web サーバーで失敗するものに関して、多くの矛盾に直面しています。
特に、私の Web 開発者プロジェクトには、aspx と aspx.cs のコード ビハインドに加えて、いくつかの追加の .cs ファイルがあります。それは問題なくビルドされ、開発サーバーの下で問題なく実行されます。ファイルをサーバーにアップロードすると、分離コードは他の .cs ファイルを認識していないようです。
aspx アプリに追加の .cs ファイルを継承させる正しい方法は何ですか?
--- 更新 --- 必要な答えが本当に見つからないので、私がやっていることをもう少し明確にさせてください:
私は3つのファイルを持っています:
デフォルト.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<%@ Import Namespace="UtilClasses" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Default.aspx.cs
public partial class _Default : Page { }
App_Code/UtilClasses.cs
namespace UtilClasses {
public class AClass {
public const int A = 1;
}
}
この例では、次のいずれかを実行しようとすると、Web サーバーでコンパイル エラーが発生します。
- @Import で App_Code を参照する
- そこに含まれるコードを aspx.cs 分離コードから呼び出すか、
- aspx ページからコードを呼び出します。
Web Developer 2008 で正常にコンパイルされます。解決策は、FTP 経由で Web サーバーに自動公開される Web サイトです。公開されているファイルの正確なリストは次のとおりです。
- デフォルト.aspx
- Default.aspx.cs
- App_Code/UtilClasses.cs
- web.config