How do I make this work ? I want to insert image in the same table with values of textboxes. Here is my table structure and code
Usertable
ID
(int)
|
Email
Varchar(50)
|
Pass
Varchar(50)
|
compass
varchar(50)
|
Role
Varchar(50)
|
Name
Varchar(50)
|
Createdby
Varchar(50)
|
image
Varbinary(50)
|
Date
(datetime)
|
When I used this, I got an error shown below:
Object must implement IConvertible.
if (Filedoc.PostedFile.FileName != "")
{
if (check1.Checked)
{
int Uid = -1;
byte[] image;
Stream s = Filedoc.PostedFile.InputStream;
BinaryReader br = new BinaryReader(s);
image = br.ReadBytes((Int32)s.Length);
// define query to be executed
string query = @"INSERT INTO UserTable (email, pass, con_pass, UserRole, Name, CreatedBy, image, CreateDate) VALUES (@email, @pass, @con_pass, @UserRole, @Name, @CreatedBy, @image, @CreateDate);
SELECT SCOPE_IDENTITY();";
// set up SqlCommand in a using block
using (SqlCommand objCMD = new SqlCommand(query, con))
{
// add parameters using regular ".Add()" method
objCMD.Parameters.Add("@email", SqlDbType.VarChar, 50).Value = mailtxtbx.Text.Trim();
objCMD.Parameters.Add("@pass", SqlDbType.VarChar, 100).Value = pass.Text.Trim();
objCMD.Parameters.Add("@con_pass", SqlDbType.VarChar, 50).Value = conpass.Text.Trim();
objCMD.Parameters.Add("@UserRole", SqlDbType.VarChar, 50).Value = 'A';
objCMD.Parameters.Add("@Name", SqlDbType.VarChar, 50).Value = txtname.Text.Trim();
objCMD.Parameters.Add("@CreatedBy", SqlDbType.VarChar, 50).Value = mailtxtbx.Text.Trim();
objCMD.Parameters.Add("@image", SqlDbType.VarBinary, 50).Value = Filedoc.PostedFile;
objCMD.Parameters.Add("@CreateDate", SqlDbType.DateTime, 100).Value = DateTime.Now;
// open connection, execute query, close connection
con.Open();
object returnObj = objCMD.ExecuteScalar();
if (returnObj != null)
{
int.TryParse(returnObj.ToString(), out Uid);
}
con.Close();
<label for="txtUsername">Email</label>
<asp:TextBox ID="mailtxtbx" runat="server" CssClass="form-control" placeholder="Email Address" />
<label for="txtPassword">Password</label>
<asp:TextBox ID="pass" runat="server" TextMode="Password" CssClass="form-control" placeholder="Password" />
<label for="txtPassword">Confirm Password</label>
<asp:TextBox ID="conpass" runat="server" TextMode="Password" CssClass="form-control" placeholder=" Confirm Password" />
<label for="txtUsername">Name of Individual/Organization</label>
<asp:TextBox ID="txtname" runat="server" CssClass="form-control" placeholder="Organization" /><br />
<p style="font-size: smaller; font-weight:bold; color:#00003D;">We require proof for Verification Process.
Please upload Identification document, ID card(Individual) C.A.C document(Registered Organization)</p>
<asp:FileUpload ID="Filedoc" runat="server" Height="43px" Width="282px" onchange="ImagePreview(this);" />
<asp:Label ID="infolbl" runat="server" Font-Size="Smaller" Text="Label"></asp:Label>
<a href="#">
<asp:CheckBox ID="check1" runat="server" />
<p style="font-size: x-small;">Agree to the Terms of Service by checking the box.</p></a>
<asp:Button ID="Button1" runat="server" Text="Create Admin Account" Class="btn btn-primary" OnClick="Button1_Click" />
<hr />
<div id="dvMessage" runat="server" visible="false" class="alert alert-danger">
<strong>Error! </strong><asp:Label ID="lblMessage" runat="server" />
</div>
</div>
<div id="Div1" runat="server" visible="false" class="alert alert-success">
<strong>Success! </strong><asp:Label ID="lblsuccess" runat="server" /><p><a href="Setup.aspx">Complete Sign up Process</a></p>
</div>
<p style="font-size: smaller;">By Clicking "Create Admin Account" button, you agree to Joscheck's <a href="#">Terms and Conditions for use.</a>.</p>
</div>
<br />
<div class="container signin" style="text-align: center; color: white;">
<p>Already Have existing Account? <a href="LoginForm.aspx">Click to Login</a>.</p>
</div>