0

C# コードからデータベース (SQL サーバー 2008) にペルシア語で何かを挿入しようとしています。問題は、SQL Server に挿入するときに、単純に utf-8 に N'چیuzzی' を使用することです。しかし、LINQ でそれを行うにはどうすればよいでしょうか? (ストアドプロシージャは使いたくない)。ありがとう

4

2 に答える 2

2

文字列を使用して、ファイルも同様である"چیزی"ことを確認してください。.csUTF-8

これを、パラメーター化されたクエリまたは使用している ORM のパラメーターとして使用します。データ アクセス層がエンコードを処理します。

于 2012-09-16T15:29:37.890 に答える
0
  • LINQtoEFまたはLINQtoSQLは、そのN''をどこでも自動的に生成/使用します。

    exec sp_executesqlN'update[dbo]。[Users]set[Name] = @ 0 where(([Id] = @ 1)and([Name] = @ 2))'、N'@ 0 nvarchar(max)、 @ 1 int、@ 2 nvarchar(max)'、@ 0 = N'ユーザー名1'、@ 1 = 1、@ 2 = N'Vahid '

  • これらのN'ي'(アラビア語Ye)またはN'ى'(ペルシア語Ye)は、どちらも有効なUTF-8文字です。したがって、(データを挿入する前に)自分で変換する必要があり、EFまたはSQLServerの義務ではありません。 それについてのいくつかの例(ペルシア語)。

于 2012-09-17T05:04:53.423 に答える