Попытка подключиться к SQL Server в приложении VS2019 C++/CLI. Этот код работает для меня:
#include "pch.h"
#include <iostream>
#using < System.dll>
#using < System.Data.dll>
using namespace std;
using namespace System;
using namespace System::Data;
using namespace System::Data::SqlClient;
bool ConnectToSQLServer(string server)
{
SqlConnection cnn;
cnn.ConnectionString = "Server=.\\SQLExpress;Integrated Security=SSPI;database=master";
try
{
cnn.Open();
cnn.Close();
return true;
}
catch (SqlException ^ex)
{
return false;
}
}
int main()
{
if (ConnectToSQLServer(".\\SQLExpress"))
printf("Connected!");
else
printf("Can not connect to SQL server!");
return 0;
}
но когда я меняю ConnectionString на это:
cnn.ConnectionString = "Server="+ server +";Integrated Security=SSPI;database=master";
Я получаю ошибку компилятора:
Ошибка (активная) Функция E1767 System::Data::SqlClient::SqlConnection::ConnectionString::set не может быть вызвана с заданным списком аргументов
Та же ошибка, когда я пытаюсь использовать SqlConnectionStringBuilder:
SqlConnectionStringBuilder sqlBuilder;
sqlBuilder.DataSource = server;
Итак, как использовать параметры строкового типа в ConnectionString?