私は ASP.net Web サイトを持っています。フォルダーには、App_Code
拡張メソッドを持つクラスがあります。Visual Studio からこのサイトを実行すると、すべてが機能します。ただし、私の IIS 7 サーバーでは、次のエラーが発生しました。
CS1061: 'System.Data.SqlClient.SqlDataReader' には 'SafeGetString' の定義が含まれておらず、タイプ 'System.Data.SqlClient.SqlDataReader' の最初の引数を受け入れる拡張メソッド 'SafeGetString' が見つかりませんでした (ディレクティブまたはアセンブリ参照を使用していますか?)
ただし、この拡張メソッドを含むファイルは App_Code フォルダーにあります。私は何か重要なものを見逃していますか?
拡張メソッド クラス:
public static class ExtentionMethods
{
public static string SafeGetString(this SqlDataReader reader, int colIndex)
{
if (!reader.IsDBNull(colIndex))
return reader.GetString(colIndex);
return "NULL VALUE";
}
public static int SafeGetInt32(this SqlDataReader reader, int colIndex)
{
if (!reader.IsDBNull(colIndex))
return reader.GetInt32(colIndex);
return -1;
}
public static DateTime SafeGetDateTime(this SqlDataReader reader, int colIndex)
{
if (!reader.IsDBNull(colIndex))
{
try
{
}
catch
{
return new DateTime(1800, 1, 1);
}
}
return new DateTime(1800, 1, 1);
}
}