0

データベースからデータを読み取り、web.config ファイルの URL を文字列に割り当てるこのコードがあります。

bool isRequestCI = false;
            if (context.Request.QueryString["RequestCI"] != null)
            {
                isRequestCI = Convert.ToBoolean(context.Request.QueryString["RequestCI"].ToString());
            }
            string GetFileInfo;
            if (isRequestCI)
            {
                GetFileInfo = "select [FileName],FileExtension,MD5Hash from ElementCIBinaryAttachments where CIBinaryFileID = " + binaryFileID;
            }
            else
                GetFileInfo = "select [FileName],FileExtension,MD5Hash from CaseFileBinaryAttachments where BinaryFileID = " + binaryFileID;
            SqlCommand comGetFileInfo = new SqlCommand(GetFileInfo, cnGetFile);
            SqlDataReader drFileInfo;
            cnGetFile.Open();
            drFileInfo = comGetFileInfo.ExecuteReader();
            string fileName = "";
            string fileExtension = "";
            string MD5Hash = "";
            while (drFileInfo.Read())
            {
                fileName = drFileInfo["FileName"].ToString().Trim();
                fileExtension = drFileInfo["FileExtension"].ToString().Trim();
                MD5Hash = drFileInfo["MD5Hash"].ToString().Trim();
            }
            drFileInfo.Close();
            cnGetFile.Close();

            string MD5PathRequestCI = ConfigurationManager.AppSettings["CIUploadedFiles"].ToString() + MD5Hash.Substring(0, 3) + @"\" + MD5Hash.Substring(3, 3) + @"\" + MD5Hash.Substring(6, 3) + @"\" + MD5Hash.Substring(9);

string MD5PathRequestCIただし、 「参照がオブジェクトのインスタンスに設定されていないため、理由がわかりません。これを行ったことがないか、何か不足していますか?」という例外が発生しています。

4

2 に答える 2

2

web.config ファイルを確認してください。config のセクションに、キー「CIUploadedFiles」を持つ appSettings エントリがあることを確認します。セクションはルート要素内にあります。

<configuration>
 <appSettings>
  <add key="CIUploadedFiles" value=""/>
 </appSettings>
</configuration>
于 2012-12-11T20:00:50.763 に答える
2

ConfigurationManager.AppSettings["CIUploadedFiles"]nullを返しています。値「CIUploadedFiles」が構成ファイルに存在することを確認してください。

于 2012-12-11T19:56:11.883 に答える