Ошибка: локаль. Как я могу исправить эту ошибку? - PullRequest
0 голосов
/ 10 февраля 2020

Я пытаюсь сохранить столбец varbinary [max] в моей базе данных. Для этого у меня есть следующий код:

    public static void databaseFilePut(string varFilePath)
    {
        byte[] file;
        using (var stream = new FileStream(varFilePath, FileMode.Open, FileAccess.Read))
        {
            using (var reader = new BinaryReader(stream))
            {
                file = reader.ReadBytes((int)stream.Length);
            }
        }


        using (var varConnection = Locale.sqlConnectOneTime(Locale.sqlDataConnectionDetails))
        using (var sqlWrite = new SqlCommand("INSERT INTO tblFiles2 (Data) Values(@File)", 
        varConnection))
        {
            sqlWrite.Parameters.Add("@File", SqlDbType.VarBinary, file.Length).Value = file;
            sqlWrite.ExecuteNonQuery();
        }
    }

Это дает мне ошибку. Название 'locale' не существует в текущем контексте. Пожалуйста, скажите мне, как я могу это исправить. Я использовал все пространства имен. Я попытался найти, но не смог найти ни одной вещи. Пожалуйста, помогите.

1 Ответ

0 голосов
/ 10 февраля 2020

Чтобы понять, какой тип библиотеки или пространства имен используется именем Locale в вашем случае, вы должны также указать имя этой библиотеки.

Однако вы можете использовать рекомендуемый метод инстанцирования соединения SQL внутри вашего приложения. Для этого вы можете использовать следующий код:

static private string GetConnectionString()
{
// To avoid storing the connection string in your code, 
// you can retrieve it from a configuration file, using the 
// System.Configuration.ConfigurationSettings.AppSettings property 
  return "Data Source=(local);Initial Catalog=AdventureWorks;"
    + "Integrated Security=SSPI;";
}

public static void databaseFilePut(string varFilePath)
{
    string connectionString = GetConnectionString();
    byte[] file;
    using (var stream = new FileStream(varFilePath, FileMode.Open, FileAccess.Read))
    {
        using (var reader = new BinaryReader(stream))
        {
            file = reader.ReadBytes((int)stream.Length);
        }
    }


    using (SqlConnection connection = new SqlConnection(connectionString))
    using (var sqlWrite = new SqlCommand("INSERT INTO tblFiles2 (Data) Values(@File)", 
    connection))
    {
        conn.Open();
        sqlWrite.Parameters.Add("@File", SqlDbType.VarBinary, file.Length).Value = file;
        sqlWrite.ExecuteNonQuery();
    }
}


Также будет полезно ознакомиться с документацией по созданию экземпляра соединения через asp. net: Документация

...