El formato de la cadena de inicialización no se ajusta a la especificación que comienza en el índice 0

Estoy utilizando Microsoft Enterprise Lip II. Tengo este método para insertar recursos en el sitio web. Recibo este error. No creo que sea un problema de permisos y realmente no sé cómo resolverlo. funciona bien

  <connectionStrings>
    <add name="SiteSqlServer"
      connectionString="Data Source=.;Initial Catalog=databaseName;User ID=sa;Password=***"/>
  </connectionStrings>

 public static int Insert(Resoursce r)
        {
            Database objDB = new SqlDatabase("SiteSqlServer");
            int val = 0;
            using (DbCommand cmd = objDB.GetStoredProcCommand("InsertResoursce"))
            {
                //  OutParameter
                objDB.AddOutParameter(cmd,"@OutResoursceID",DbType.Int32,int.MaxValue);

                //  iNParameter
                objDB.AddInParameter(cmd, "@ModuleId", DbType.Int32, r.ModuleId);
                objDB.AddInParameter(cmd, "@Summary", DbType.StringFixedLength, r.Summary);
                objDB.AddInParameter(cmd, "@PageId", DbType.StringFixedLength, r.PageID);
                objDB.AddInParameter(cmd, "@TypeId", DbType.Int32, r.TypeID);
                objDB.AddInParameter(cmd, "@UserID", DbType.Guid, r.UserID);
                objDB.AddInParameter(cmd, "@Enabled", DbType.Boolean, r.Enabled);
                objDB.AddInParameter(cmd, "@SafetyAlert", DbType.Boolean, r.SafetyAlert);
                objDB.AddInParameter(cmd, "@SaftyAlertText", DbType.StringFixedLength, r.SafetyAlertText);


                try
                {
                     val = objDB.ExecuteNonQuery(cmd);
                     if (val == 1)
                     {
                         return Convert.ToInt32(objDB.GetParameterValue(cmd, "@OutResoursceID"));
                     }
                     else
                     {
                         return -1;
                     }
                }
                catch (Exception ex)
                {


                    throw ex;
                } 

            }

System.ArgumentException fue capturado HResult = -2147024809
Mensaje = El formato de la cadena de inicialización no se ajusta a la especificación que comienza en el índice 0. Fuente = System.Data StackTrace: en System.Data.Common.DbConnectionOptions.GetKeyValuePair (String connectionString, Int32 currentPosition, StringBuilder buffer, Boolean useOdbcRules, String & keyname, String & keyvalue) at System.Data.Common.DbConnectionOptions.ParseInternal (Hashtable parsetable, String connectionString, Boolean buildChain, Hashtable sinónimos, Boolean firstpincra.) en la redacción de la empresa, así como también en el sistema de la empresa, así como en el sistema de la empresa, en el sistema de la empresa, y en la forma en que se desarrolla la operación de la embarcación. userConnectionOptions) en System.Data.SqlClient.S qlConnection.ConnectionString_Set (clave de DbConnectionPoolKey) en System.Data.SqlClient.SqlConnection.set_ConnectionString (valor de String) en el que se realiza la actividad en la que se realiza el trabajo. Microsoft.Practices.EnterpriseLibrary.Data.Database.GetWrappedConnection () en Microsoft.Practices.EnterpriseLibrary.Data.Database.GetOpenConnection () en Microsoft.Practices.EnterpriseLibrary.Database.ExatabaseNonQuery (DbCacticos.Encargado de la actividad). App_Code.BOL.Resoursce.Insert (Resoursce r) en c: \ inetpub \ wwwroot \ ideaPark \ DesktopModules \ ResourceModule \ App_Code \ BOL \ Resoursce.cs: line 54 InnerException:

Respuestas a la pregunta(1)

Su respuesta a la pregunta