グッドデイ誰も、今、このエラーで立ち往生イムのようエラーの変換データ型 '数値' 小数へ(ヘルプ!)
は
Error Converting data type 'Numeric' to Decimal
これは私のコードです
AddManualItems AddReconItem = new AddManualItems();
UserAccess user = new UserAccess();
AddReconItem.BranchCode = BranchCodeTextBox.Text;
AddReconItem.ForLoanMonth = YearDropDownList.SelectedValue + "/" + MonthDropDownList.SelectedValue;
AddReconItem.ItemWeight = Convert.ToDecimal(WeightTextBox.Text);
AddReconItem.PrincipalAmount = Convert.ToDecimal(PrincipalTexAmTextBox.Text);
AddReconItem.PawnTicket = PwnTicketTextBox.Text;
AddReconItem.ItemStorageGroup = Convert.ToInt16(StorageNameDropDownList.SelectedValue);
AddReconItem.ReconID = Convert.ToInt16(ReconTypeDropDownList.SelectedValue);
user.UserID = Session["UserID"].ToString();
string a = servs.AddItemRecon(user, AddReconItem); // this is where the error appears in debug mode
ADDitemRecon(User、AddReconItem)内のコードはこれです
using (SqlConnection reportsConn = new SqlConnection(sqlConnWriter))
{
reportsConn.Open();
SqlCommand AddReconItem = new SqlCommand();
AddReconItem.Connection = reportsConn;
AddReconItem.CommandType = CommandType.StoredProcedure;
AddReconItem.CommandText = "Updater.usp_AddReconcileItems";
AddReconItem.Parameters.AddWithValue("@ITEMWEIGHT", Convert.ToDecimal(items.ItemWeight));
AddReconItem.Parameters.AddWithValue("@ITEMPRINCIPALAMT", Convert.ToDecimal(items.PrincipalAmount));
AddReconItem.Parameters.AddWithValue("@FORLOANMONTH", Convert.ToDateTime(items.ForLoanMonth));
AddReconItem.Parameters.AddWithValue("@STORAGEGROUPID", items.ItemStorageGroup);
AddReconItem.Parameters.AddWithValue("@BRANCHCODE", items.BranchCode);
AddReconItem.Parameters.AddWithValue("RECONID", items.ReconID);
AddReconItem.Parameters.AddWithValue("@PAWNTIX",items.PawnTicket);
AddReconItem.Parameters.AddWithValue("@CREATEDBY", user.UserID.ToString());
AddReconItem.ExecuteNonQuery();
}
ItemWeightのための私の財産は
private decimal itemWeight;
public decimal ItemWeight
{
get { return itemWeight; }
set { itemWeight = value; }
}
iはエラーがアイテムの重量である賭けるあるので、ときに私の項目重量の入力 12345.12それは、正常に動作しますが、私は、入力1234の代わりの1234.00と、それを処理するときに扱いますそれは数字だけにする1234として。
助け?私の変換が間違っている場合、私は** は10進数で知られているいずれかのバグがあり、データベース内の私のフィールドは
fld_ItemWeight (decimal (38,6), not null
EDITですちなみに
を知りません?私は現在VS 2005を使用しています。
ado.net終わりSqlDbType.Decimalを取るarticledあなたに基づいて進(38,6)私はこれを持って、これによりエラーが発生しないことを前提としていますが、分数は(2,2)同じ精度と同じ数の小数点以下の宣言を持つ人にのみ適用されます。 – user2705620