获得无法识别的转义序列错误

本文关键字:转义序列 错误 识别 | 更新日期: 2023-09-27 18:12:35

我想通过数据库将值与文本框中的值进行比较来存储数据表中的值,但是我在连接字符串附近得到无法识别的转义序列错误。我已经尝试了给出的技术链接-> [CS1009:无法识别的转义序列。但这没有工作,因为我将得到异常称为无法识别的路径

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Configuration;
using System.Drawing;
using System.Data;
public partial class searchsale : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        try
        {
            SqlConnection conn = new SqlConnection("Data Source=.'SQLEXPRESS;AttachDbFilename=|DataDirectory|'rdb.mdf;Integrated Security=True;User Instance=True");
            conn.Open();
            string scriptname = TextBox1.Text;
            string accnum = TextBox2.Text;
            string sql = @"select scriptname,accnum,Quantity,price from transac where scriptname = @sn, accnum = @an and transactio = 'Sell'";
            SqlCommand cmd = new SqlCommand();
            cmd.CommandType = CommandType.Text;
            cmd.CommandText = sql;
            cmd.Parameters.AddWithValue("@an", accnum);
            cmd.Parameters.AddWithValue("@sn", scriptname);
            SqlDataReader dr = cmd.ExecuteReader();
            DataTable dt = GetDataTable(sql);
        }
        catch (Exception ex)
        {
            Response.Write("error" + ex.ToString());
        }
    }
    private DataTable GetDataTable (string sql)
    {
        DataTable dt = new DataTable();
        using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ToString()))
        {
            SqlDataAdapter da = new SqlDataAdapter(sql, conn);
            da.Fill(dt);
        }
        return dt;
    }
}

获得无法识别的转义序列错误

变化:

"Data Source=.'SQLEXPRESS;AttachDbFilename=|DataDirectory|'rdb.mdf;Integrated Security=True;User Instance=True"

@"Data Source=.'SQLEXPRESS;AttachDbFilename=|DataDirectory|'rdb.mdf;Integrated Security=True;User Instance=True"

"Data Source=.''SQLEXPRESS;AttachDbFilename=|DataDirectory|''rdb.mdf;Integrated Security=True;User Instance=True"

查看这个关于c#转义序列的链接。字符串前面的@使它不做任何转义字符

在连接字符串前逐字使用@,如

SqlConnection conn = new SqlConnection(@"Data Source=.'SQLEXPRESS;AttachDbFilename=|DataDirectory|'rdb.mdf;Integrated Security=True;User Instance=True");