Ошибка сборки смешанного режима для версии «v2.0.50727».. при создании таблиц во время установки, класс установщикаC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Ошибка сборки смешанного режима для версии «v2.0.50727».. при создании таблиц во время установки, класс установщика

Сообщение Anonymous »

У меня есть оконное приложение, я выполнил некоторые дополнительные действия, отредактировал пользовательский интерфейс, получая значения от пользователя при установке приложения и далее в классе установщика при создании таблиц, получаю сообщение об ошибке ниже

Код: Выделить всё

Mixed mode assembly is built against version 'v2.0.50727' of the runtime and cannot
be loaded in the 4.0 runtime without additional configuration information.
Я много гуглил и обнаружил, что добавление ниже решит проблему (у меня не сработало)
ранее мой файл app.confg выглядел так:
Код: Installer1.cs

Код: Выделить всё

public override void Install(IDictionary stateSaver)
{
base.Install(stateSaver);
string targetDirectory = Context.Parameters["targetdir"];
string servername = Context.Parameters["dbservername"];
string dbname = Context.Parameters["dbname"];
string strconnectionstring = "Data Source='" + servername + "';Initial Catalog='" + dbname + "';Integrated Security=True";

if (servername == "")
{
throw new InstallException("You did not Specify SQL Servername!");
}

else if (dbname == "")
{
throw new InstallException("You did not specify the database name!");
}

string exePath = string.Format("{0}abc..exe", targetDirectory);
System.Configuration.Configuration conf = ConfigurationManager.OpenExeConfiguration(exePath);
conf.ConnectionStrings.ConnectionStrings["abc"].ConnectionString = strconnectionstring;
conf.Save(ConfigurationSaveMode.Modified);

using (SqlConnection con1 = new SqlConnection(strconnectionstring))
{
System.Diagnostics.Debugger.Break();
string getScript = "Use " + dbname + "; CREATE TABLE supportContacts ( id int identity primary key,  type varchar(20),  details varchar(30)  )";
// string strscript = getScript;
Server server = new Server(new ServerConnection(con1));
server.ConnectionContext.ExecuteNonQuery(getScript );
con1.Close();
}

}
Во время отладки я узнаю, что произошла ошибка

Код: Выделить всё

server.ConnectionContext.ExecuteNonQuery(strupdatescript);


Подробнее здесь: https://stackoverflow.com/questions/116 ... g-tables-w
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»