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

Probably the problem is that there is no connection string on your config file with name Constr as, according error description, the problem should be on this line

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

The only thing the type initializer for SqlHelper appears to be doing is this:

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

What exception is this throwing? If I were to guess, there probably isn't a connection string called Constr in the configuration. Is there? Can you show the config setting to us? Otherwise, what is the exception?

Note also that .ToString() isn't necessary on that line. ConnectionString is already a string.

于 2013-07-16T17:46:52.953 回答