Этот поток является продолжением приведенного ниже потока. Запуск службы Windows, когда новая запись вставляется в БД
Я получил код из Demo.B, предложенный
public partial class Triggers
{
// Enter existing table or view for the target and uncomment the attribute line
[Microsoft.SqlServer.Server.SqlTrigger(Name = "Trigger_Web", Target = "StoryItems", Event = "FOR INSERT")]
public static void Trigger_Web()
{
SqlCommand command;
SqlTriggerContext triggerContext = SqlContext.TriggerContext;
SqlPipe pipe = SqlContext.Pipe;
SqlDataReader reader;
if (triggerContext.TriggerAction == TriggerAction.Insert)
{
using (SqlConnection connection = new SqlConnection(@"context connection=true"))
{
connection.Open();
command = new SqlCommand(@"SELECT * FROM StoryItems", connection);
reader = command.ExecuteReader();
reader.Read();
// get inserted value
string Name;
string Location;
Name = (string)reader[1];
Location =(string)reader[2];
reader.Close();
//try
//{
// // try to pass parameter to windows service
// //WindowsService param = new WindowService(Name, Location);
// //Do something if it pass
//}
//catch (Exception ex)
//{
//}
// Replace with your own code
SqlContext.Pipe.Send("Trigger FIRED");
}
}
}
}
Я сталкиваюсь с несколькими проблемами, когда я запускаю execute, в первую очередь он просит меня изменить версию с 4.0 на более низкую (поэтому в свойствах изменил версию на 3.5).
Когда я пытаюсь войти вон не работает, и все время он говорит, что развертывание успешно, и окно вывода показывает "Отменено пользователем".Не уверен, что происходит за кулисами.
Пожалуйста, кто-нибудь посоветует мне, как я могу выполнить и увидеть некоторые результаты, когда новая строка вставлена.