0
   string strCon =
           ConfigurationManager.ConnectionStrings["constr"].ConnectionString;


           Company.Common.SqlHelper.Connect = strCon;

この例外を取得する誰かが助けてください

"The type initializer for 'Company.Common.SqlHelper' threw an exception."}

  /// <summary>
/// The SqlHelper class is intended to encapsulate high performance, scalable best practices for 
/// common uses of SqlClient
/// </summary>
public sealed class SqlHelper
{
    public void MessageBox(string message, Control ControlID)
    {

        //tmp = "<script language='javascript'>";
        string tmp = "alert('" + message + "');";
        //tmp += "</script>";
        //ScriptManager.RegisterStartupScript(this, this.GetType(), "tmp", tmp, true); 
        //string CloseWindow;
        //CloseWindow = "alert('Hello World')";
        ScriptManager.RegisterStartupScript(ControlID, ControlID.GetType(), "tmp", tmp, true);
        // Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "MyScript", tmp);
    }
    public static string Connect = ConfigurationManager.ConnectionStrings["Constr"].ConnectionString.ToString();
    #region private utility methods & constructors

    // Since this class provides only static methods, make the default constructor private to prevent 
    // instances from being created with "new SqlHelper()"
    private SqlHelper() { }

    /// <summary>
    /// This method is used to attach array of SqlParameters to a SqlCommand.
    /// 
    /// This method will assign a value of DbNull to any parameter with a direction of
    /// InputOutput and a value of null.  
    /// 
    /// This behavior will prevent default values from being used, but
    /// this will be the less common case than an intended pure output parameter (derived as InputOutput)
    /// where the user provided no input value.
    /// </summary>
    /// <param name="command">The command to which the parameters will be added</param>
    /// <param name="commandParameters">An array of SqlParameters to be added to command</param>
    private static void AttachParameters(SqlCommand command, SqlParameter[] commandParameters)
    {
        if (command == null) throw new ArgumentNullException("command");
        if (commandParameters != null)
        {
            foreach (SqlParameter p in commandParameters)
            {
                if (p != null)
                {
                    // Check for derived output value with no value assigned
                    if ((p.Direction == ParameterDirection.InputOutput ||
                        p.Direction == ParameterDirection.Input) &&
                        (p.Value == null))
                    {
                        p.Value = DBNull.Value;
                    }
                    command.Parameters.Add(p);
                }
            }
        }
    }

}

4

2 に答える 2

0

おそらく問題は、Constrエラーの説明によると、問題はこの行にあるはずなので、名前の構成ファイルに接続文字列がないことです

public static string Connect = ConfigurationManager.ConnectionStrings["Constr"].ConnectionString.ToString();
于 2013-07-16T17:46:35.700 に答える
0

SqlHelper型初期化子が行っているように見える唯一のことは次のとおりです。

public static string Connect = ConfigurationManager.ConnectionStrings["Constr"].ConnectionString.ToString();

このスローはどの例外ですか?推測すると、おそらくConstr構成で呼び出される接続文字列はありません。ある?構成設定を見せてもらえますか? それ以外の場合、例外は何ですか?

その行では必要ないことにも注意してください.ToString()ConnectionStringはすでに文字列です。

于 2013-07-16T17:46:52.953 に答える