C# SQL Server input

本文关键字:input Server SQL | 更新日期: 2023-09-27 18:35:21

我正在使用 C# 中的 SQL 数据库进行测试。我按照 MSDN 的指示这样做了。这是代码:

using System;
using System.Collections.Generic;
using System.Data.Linq;
using System.Data.Linq.Mapping;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace LinqConsoleApp
{
    [Table(Name = "DesanoDict1")]
    public class DesanoDict1
    {
        [Column(Storage = "_Desano")]
        public string Desano
        {
            get;
            set;
        }
        [Column(Storage = "_Portuguese")]
        public string Portuguese
        {
            get;
            set;
        }
        [Column(Storage = "_English")]
        public string English
        {
            get;
            set;
        }
        [Column(Storage = "_Spanish")]
        public string Spanish
        {
            get;
            set;
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            // Use a connection string.
            DataContext db = new DataContext
                (@"C:'Users'FieldLingLab'Documents'Visual Studio 2015'Projects'GUI Test'GUI Test'Resources'Desano'Desano.mdf");
            Table<DesanoDict1> dd1 = db.GetTable<DesanoDict1>();
            IQueryable<DesanoDict1> DesQuery = from des in dd1
                                               select des;

            foreach(DesanoDict1 dd in DesQuery)
            {
                Console.WriteLine("Desano={0}, Portuguese={1}. English={2}, Spanish={3}", dd.Desano, dd.Portuguese, dd.English, dd.Spanish);
            }
            Console.ReadLine();
        }
    }
}

该数据库是来自SQL Server 2014的mdf文件。这是一个包含四列(德萨诺语、葡萄牙语、英语、西班牙语)的表格,它们每个都有(我相信)UTF-16 编码(SSMS 中的 nvarchar)的单词。我遇到的问题是,当我运行时,我在GetTable行上收到一个运行时错误,说"错误的存储属性:"_Desano。我哪里出错了?

C# SQL Server input

不确定,

因为我没有运行它,但根据 msdn 示例,看起来您实际上需要定义存储私有字段。 像这样

private string _Desano;
[Column(Storage = "_Desano")]
public string Desano
{
    get;
    set;
}