Click here to Skip to main content
15,887,434 members
Please Sign up or sign in to vote.
1.80/5 (2 votes)
See more:
No mapping exists from object type System.Web.UI.WebControls.TextBox to a known managed provider native type.

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.ArgumentException: No mapping exists from object type System.Web.UI.WebControls.TextBox to a known managed provider native type.

Source Error: 


Line 28:     public string NoneQueryCommand(SqlConnection cn, string ProcedureName, params SqlParameter[] SP)
Line 29:     {
Line 30:         return UpperLayer.NoneQueryCommand(cn, ProcedureName, SP);
Line 31:     }
Line 32: 

Source File: d:\FinalProject\3-Tier\UI\App_Code\DataBase.cs    Line: 30 

Stack Trace: 


[ArgumentException: No mapping exists from object type System.Web.UI.WebControls.TextBox to a known managed provider native type.]
   System.Data.SqlClient.MetaType.GetMetaTypeFromValue(Type dataType, Object value, Boolean inferLen, Boolean streamAllowed) +2020471
   System.Data.SqlClient.SqlParameter.GetMetaTypeOnly() +5286545
   System.Data.SqlClient.SqlParameter.Validate(Int32 index, Boolean isCommandProc) +16
   System.Data.SqlClient.SqlCommand.SetUpRPCParameters(_SqlRPC rpc, Int32 startCount, Boolean inSchema, SqlParameterCollection parameters) +122
   System.Data.SqlClient.SqlCommand.BuildRPC(Boolean inSchema, SqlParameterCollection parameters, _SqlRPC& rpc) +78
   System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite) +1325
   System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean asyncWrite) +175
   System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean asyncWrite) +205
   System.Data.SqlClient.SqlCommand.ExecuteNonQuery() +160
   DAL.DALClass.NoneQueryCommand(SqlConnection cn, String ProcedureName, SqlParameter[] SP) in c:\Users\mehdi\Desktop\FinalProject\3-Tier\DAL\DAL\DALClass.cs:42
   BLL.BLLClass.NoneQueryCommand(SqlConnection cn, String ProcedureName, SqlParameter[] SP) in c:\Users\mehdi\Desktop\FinalProject\3-Tier\BLL\BLL\BLLClass.cs:29
   DataBase.NoneQueryCommand(SqlConnection cn, String ProcedureName, SqlParameter[] SP) in d:\FinalProject\3-Tier\UI\App_Code\DataBase.cs:30
   manage_UserControls_GalleryAdminPage.Button1_Click(Object sender, EventArgs e) in d:\FinalProject\3-Tier\UI\manage\UserControls\GalleryAdminPage.ascx.cs:55
   System.Web.UI.WebControls.Button.OnClick(EventArgs e) +9553594
   System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +103
   System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +10
   System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +13
   System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +35
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1724

Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.17929
Posted
Updated 26-Nov-14 12:22pm
v2

Hi,

Some where in your code you are setting the textbox properties in a wrong manner.
For e.g you have to set the text of a texbox not a control,
cmd.Parameters.AddWithValue("@parametername", TextBox1);

which should be
cmd.Parameters.AddWithValue("@parametername",TextBox1.Text);

See this in your code
 
Share this answer
 
Comments
Member 11266319 27-Nov-14 14:36pm    
thank you
Member 11266319 27-Nov-14 14:47pm    
public class DALClass
{
public void OpenConnection(SqlConnection cn)
{
if (cn.State == ConnectionState.Closed)
cn.Open();
}
public void CloseConnection(SqlConnection cn)
{
if (cn.State != ConnectionState.Closed)
cn.Close();
}
//public static string constr = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
public string NoneQueryCommand(SqlConnection cn, string ProcedureName, params SqlParameter[] SP)
{
//SqlConnection cn = new SqlConnection(DataBase.constr);
SqlCommand cmd = new SqlCommand(ProcedureName, cn);
cmd.CommandType = CommandType.StoredProcedure;

for (int i = 0; i < SP.Length; i++)
{
cmd.Parameters.Add(SP[i]);
}

if (cn.State == ConnectionState.Closed)
cn.Open();
try
{
cmd.ExecuteNonQuery();//my problem is here
//

#region UploadPicture
string result1= db.ValidateUploader(FUPic);
string result2 = db.ValidateUploader(FUPic1);
if (result1 == "OK" && result2=="OK")
{

string Url = "~/Slider/data1/images" + DateTime.Now.Second + FUPic.FileName;
FUPic.SaveAs(Server.MapPath(Url));
string TipUrl="~/Slider/data1/tooltips" + DateTime.Now.Second + FUPic1.FileName;
FUPic.SaveAs(Server.MapPath(TipUrl));
#region InsertPicture
//this is my parameters lblMsg.Text = db.NoneQueryCommand(cn, "sp_gallery_insert",
new SqlParameter("@ImageUrl",Url),
new SqlParameter("@tipUrl",TipUrl),
new SqlParameter("@Title",txtTitle.Text),
new SqlParameter("@alt",txtAlt.Text),
new SqlParameter("@TitleText",txtTitleText.Text),
new SqlParameter("@Text",txtText)
);
GridView1.DataBind();
#endregion




//
return "Sucssfuly !";

}
catch (SqlException ex)
{
return "Faild !!!";
}
finally
{
if (cn.State != ConnectionState.Closed)
cn.Close();
}
}

public SqlDataReader SelectCommand(SqlConnection cn, string ProcedureName, params SqlParameter[] SP)
{

SqlCommand cmd = new SqlCommand(ProcedureName, cn);
cmd.CommandType = CommandType.StoredProcedure;
for (int i = 0; i < SP.Length; i++)
{
cmd.Parameters.Add(SP[i]);
}

if (cn.State == ConnectionState.Closed)
cn.Open();
SqlDataReader sqldr = cmd.ExecuteReader();
return sqldr;
}
public DataTable SelectCommand(string ProcedureName, SqlConnection cn, params SqlParameter[] SP)
{

//SqlConnection sqlcn = new SqlConnection(DataBase.constr);
SqlDataAdapter sqlda = new SqlDataAdapter(ProcedureName, cn);
sqlda.SelectCommand.CommandType = CommandType.StoredProcedure;
for (int i = 0; i < SP.Length; i++)
{
sqlda.SelectCommand.Parameters.Add(SP[i]);
}
DataTable Result = new DataTable();
sqlda.Fill(Result);
return Result;
}
public DataSet SelectCommand(SqlConnection cn,bool flag, string ProcedureName, params SqlParameter[] SP)
{

//SqlConnection sqlcn = new SqlConnection(DataBase.constr);
SqlDataAdapter sqlda = new SqlDataAdapter(ProcedureName, cn);
sqlda.SelectCommand.CommandType = CommandType.StoredProcedure;
for (int i = 0; i < SP.Length; i++)
{
sqlda.SelectCommand.Parameters.Add(SP[i]);
}
DataSet Result = new DataSet();
public class DALClass
{
public void OpenConnection(SqlConnection cn)
{
if (cn.State == ConnectionState.Closed)
cn.Open();
}
public void CloseConnection(SqlConnection cn)
{
if (cn.State != ConnectionState.Closed)
cn.Close();
}
//public static string constr = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
public string NoneQueryCommand(SqlConnection cn, string ProcedureName, params SqlParameter[] SP)
{
//SqlConnection cn = new SqlConnection(DataBase.constr);
SqlCommand cmd = new SqlCommand(ProcedureName, cn);
cmd.CommandType = CommandType.StoredProcedure;

for (int i = 0; i < SP.Length; i++)
{
cmd.Parameters.Add(SP[i]);
}

if (cn.State == ConnectionState.Closed)
cn.Open();
try
{
cmd.ExecuteNonQuery();//my problem is here
//

#region UploadPicture
string result1= db.ValidateUploader(FUPic);
string result2 = db.ValidateUploader(FUPic1);
if (result1 == "OK" && result2=="OK")
{

string Url = "~/Slider/data1/images" + DateTime.Now.Second + FUPic.FileName;
FUPic.SaveAs(Server.MapPath(Url));
string TipUrl="~/Slider/data1/tooltips" + DateTime.Now.Second + FUPic1.FileName;
FUPic.SaveAs(Server.MapPath(TipUrl));
#region InsertPicture
//this is my parameters lblMsg.Text = db.NoneQueryCommand(cn, "sp_gallery_insert",
new SqlParameter("@ImageUrl",Url),
new SqlParameter("@tipUrl",TipUrl),
new SqlParameter("@Title",txtTitle.Text),
new SqlParameter("@alt",txtAlt.Text),
new SqlParameter("@TitleText",txtTitleText.Text),
new SqlParameter("@Text",txtText)
);
GridView1.DataBind();
#endregion




//
return "Sucssfuly !";

}
catch (SqlException ex)
{
return "Faild !!!";
}
finally
{
if (cn.State != ConnectionState.Closed)
cn.Close();
}
}

public SqlDataReader SelectCommand(SqlConnection cn, string ProcedureName, params SqlParameter[] SP)
{

SqlCommand cmd = new SqlCommand(ProcedureName, cn);
cmd.CommandType = CommandType.StoredProcedure;
for (int i = 0; i < SP.Length; i++)
{
cmd.Parameters.Add(SP[i]);
}

if (cn.State == ConnectionState.Closed)
cn.Open();
SqlDataReader sqldr = cmd.ExecuteReader();
return sqldr;
}
public DataTable SelectCommand(string ProcedureName, SqlConnection cn, params SqlParameter[] SP)
{

//SqlConnection sqlcn = new SqlConnection(DataBase.constr);
SqlDataAdapter sqlda = new SqlDataAdapter(ProcedureName, cn);
sqlda.SelectCommand.CommandType = CommandType.StoredProcedure;
for (int i = 0; i < SP.Length; i++)
{
sqlda.SelectCommand.Parameters.Add(SP[i]);
}
DataTable Result = new DataTable();
sqlda.Fill(Result);
return Result;
}
public DataSet SelectCommand(SqlConnection cn,bool flag, string ProcedureName, params SqlParameter[] SP)
{

//SqlConnection sqlcn = new SqlConnection(DataBase.constr);
SqlDataAdapter sqlda = new SqlDataAdapter(ProcedureName, cn);
sqlda.SelectCommand.CommandType = CommandType.StoredProcedure;
for (int i = 0; i < SP.Length; i++)
{
sqlda.SelectCommand.Parameters.Add(SP[i]);
}
DataSet Result = new DataSet();
sqlda.Fill(Result);
return

Result;
}
public object SelectCommand(SqlConnection cn,string ProcedureName, bool flag, params SqlParameter[] SP)
{
//SqlConnection cn = new SqlConnection(constr);
SqlCommand cmd = new SqlCommand(ProcedureName, cn);
cmd.CommandType = CommandType.StoredProcedure;
for (int i = 0; i < SP.Length; i++)
{
cmd.Parameters.Add(SP[i]);
}

if (cn.State == ConnectionState.Closed)
cn.Open();
object result = cmd.ExecuteScalar();
CloseConnection(cn);
return result;
}
}
}
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900