将数据添加到mssql字符串到字节错误c#

时间:2012-10-07 02:05:32

标签: c# sql-server database insert

我正在尝试将一些数据放到MSSQL数据库中,这是我用Visual Basic创建的。当我执行代码时,我收到以下错误:

Error   21  Cannot implicitly convert type 'string' to 'byte[]' c:\users\hussein\documents\visual studio 2012\Projects\WebApplication2\WebApplication2\defualt.aspx.cs  32  33  WebApplication2
Error   22  Cannot implicitly convert type 'string' to 'byte[]' c:\users\hussein\documents\visual studio 2012\Projects\WebApplication2\WebApplication2\defualt.aspx.cs  33  32  WebApplication2
Error   23  Cannot implicitly convert type 'string' to 'byte[]' c:\users\hussein\documents\visual studio 2012\Projects\WebApplication2\WebApplication2\defualt.aspx.cs  34  34  WebApplication2
Error   24  Cannot implicitly convert type 'string' to 'byte[]' c:\users\hussein\documents\visual studio 2012\Projects\WebApplication2\WebApplication2\defualt.aspx.cs  35  34  WebApplication2

这是我的代码,我尝试将字符串转换为byte[],但我的数据库中有二进制文本。

using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data.SqlClient;
using System.Data;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Xml.Linq;
using System.Linq;
using System.Data.Linq;

namespace WebApplication2
{
    public partial class defualt : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void Unnamed5_Click(object sender, EventArgs e)
        {
            if ((TextBox1.Text == "" || TextBox2.Text == "" || TextBox3.Text == "" || TextBox4.Text == ""))
            {
                Label1.Text = "<h3>- Du måste fylla i alla fält, brorsan</h3>";
            }
            else
            {
                DatabaseEntities db = new DatabaseEntities();
                var nyMedlem = new medlemar();
                nyMedlem.namn = TextBox1.Text;
                nyMedlem.anv = TextBox2.Text;
                nyMedlem.losen = TextBox3.Text;
                nyMedlem.epost = TextBox4.Text;
                db.medlemar.Add(nyMedlem);
                db.SaveChanges();
                Label1.Text = "<h3>- Nu är du medlem</h3>";
            }
        }
    }
}

1 个答案:

答案 0 :(得分:1)

您可能将4个文本字段保存到数据库字段中,格式为byte [],因此您将获得4次转换。

试试这个:它需要修改medlemar类。

string x = TextBox1.Text;
byte[] y = System.Text.Encoding.UTF8.GetBytes(x);

nyMedlem.(something of data type byte[]) = y;