I think this is VS Problem not Sql server,
Here i pass amount in string ("12.89") to stored procedure and find data save accurate 12.89
Solution-
Change Float to string in Properties and Methods,procedure
Note
don't change column type Float to string in table
Example-
In Your Property
Public Float Amount { get; set; }
TO
Public String Amount { get; set; }
In Your Method
Public boolAdd(String amount)
{
//Your Logic Like
bool status = false;
DbParam[] param = new DbParam[1];
param[0] = new DbParam("@amount", "", "amount", SqlDbType.VarChar);
status = Db.Update(ds, "sp_Add", "", "", param, true);
return status;
}
In Your Procedure
Note- Amount column is Float type in table don't change to sting
Create Proc sp_Add
(
@amount varchar(20)
)
as
begin
Insert into Price(amount) values (@amount)
end