Member 13814990 Ответов: 1

Как мы можем добавить сообщения журнала в C#, чтобы мы могли читать их в SQL server?


Я пытаюсь добавить сообщения журнала в C#, чтобы я мог читать их из своей базы данных SQL Server, например, ошибка входа в систему, создание нового пользователя и т. д., Но ничего не работает. Кто-нибудь может мне помочь?

Что я уже пробовал:

Я пробовал разные учебники, но ни один из них не работал

1 Ответов

Рейтинг:
2

OriginalGriff

Попробовать это:

public void LogToDB(string text)
    {
    using (SqlConnection con = new SqlConnection(strLogDBConnect))
        {
        con.Open();
        using (SqlCommand cmd = new SqlCommand("INSERT INTO LogTableName (LogTextColumnName) VALUES (@LOGSTR)", con))
            {
            cmd.Parameters.AddWithValue("@LOGSTR", strLogDBConnect);
            cmd.ExecuteNonQuery();
            }
        }
    }
Сначала вам нужно будет настроить таблицу в БД и соответствующим образом установить имена и строку подключения. Если это не сработает, покажите нам код и объясните, почему он не сработал.


Member 13814990

то, что я пытаюсь сделать, это когда я создаю нового пользователя с этим кодом ниже, я хочу, чтобы в моей БД было сообщение о событии журнала для e.x -- new user created --


Публичная Функция NewSave() В Виде Строки
Попробуй

If (txtPassword.Текст <> строка.Пустой) Затем
_user = приложения UserService.GetByUserNameId(Строка.Формат("{0}.{1}", txtName.Текст, txtSurname.Текст))

Dim mSalt As String = CreateSalt(5)
Dim mPassword As String = CreatePasswordHash(txtPassword.Текст, mSalt)

Если (_user - это ничто), то
_user = новый T02User()
_пользователь.UserNameId = Строка.Формат("{0}.{1}", txtName.Текст, txtSurname.Текст)
Конец, Если

_пользователь.Имя пользователя = txtName.Текст
_пользователь.UserSurname = txtSurname.Текст
_пользователь.PasswordSalt = mSalt
_пользователь.UserPassword = mPassword
_пользователь.Электронная почта = txtEmail.Текст
_пользователь.GroupNameId = cmbGroup.Элемент.Ценность.Метод toString()
_пользователь.RoleNameId = cmbRole.Элемент.Ценность.Метод toString()
_пользователь.Метода changepassword = checkChangePassword.Проверен
_пользователь.UserActive = checkIsActive.Проверен

служба пользователей.Сохранить(_user)

OriginalGriff

И что же?
Кроме того, что это VB вместо C# ...

Member 13814990

Защищенные суб btnSave_Click(как byval отправителя как объект, как byval E Как DirectEventArgs)
Попробуй
If (txtPassword.Текст <> строка.Пустой) Затем
_user = приложения UserService.GetByUserNameId(Строка.Формат("{0}.{1}", txtName.Текст, txtSurname.Текст))

Dim mSalt As String = CreateSalt(5)
Dim mPassword As String = CreatePasswordHash(txtPassword.Текст, mSalt)

Если (_user - это ничто), то
_user = новый T02User()
_пользователь.UserNameId = Строка.Формат("{0}.{1}", txtName.Текст, txtSurname.Текст)
Конец, Если

_пользователь.Имя пользователя = txtName.Текст
_пользователь.UserSurname = txtSurname.Текст
_пользователь.PasswordSalt = mSalt
_пользователь.UserPassword = mPassword
_пользователь.Электронная почта = txtEmail.Текст
_пользователь.GroupNameId = cmbGroup.Элемент.Ценность.Метод toString()
_пользователь.RoleNameId = cmbRole.Элемент.Ценность.Метод toString()
_пользователь.Метода changepassword = checkChangePassword.Проверен
_пользователь.UserActive = checkIsActive.Проверен

служба пользователей.Сохранить(_user)

'treeUsers.RemoveChildNode("Корень", "Корень")

LoadUserData()


'btnDeleteUser.Отменено = Ложь


ВН.Нет.Х.Сообщение.Шоу(Новый MessageBoxConfig() С {.Название = "Информация", .Сообщение = "данные успешно сохранены"., .Кнопки = Функции MessageBox.Кнопки.ОК .Значок = Функции MessageBox.Значок.ИНФОРМАЦИЯ})
Еще
ВН.Нет.Х.Сообщение.Шоу(Новый MessageBoxConfig() С {.Название = "Ошибка", .Сообщение = "пароль не может быть пустым!", .Кнопки = Функции MessageBox.Кнопки.ОК .Значок = Функции MessageBox.Значок.ОШИБКА})
Конец, Если
Поймать ex как исключение
ВН.Нет.Х.Сообщение.Шоу(Новый MessageBoxConfig() С {.Название = "Ошибка", .Сообщение = ех.Сообщение, .Кнопки = Функции MessageBox.Кнопки.ОК .Значок = Функции MessageBox.Значок.ОШИБКА})
Конец Попытки

Конец Подводной Лодки

<directmethod> _
Публичная Функция NewSave() В Виде Строки
Попробуй

If (txtPassword.Текст <> строка.Пустой) Затем
_user = приложения UserService.GetByUserNameId(Строка.Формат("{0}.{1}", txtName.Текст, txtSurname.Текст))

Dim mSalt As String = CreateSalt(5)
Dim mPassword As String = CreatePasswordHash(txtPassword.Текст, mSalt)

Если (_user - это ничто), то
_user = новый T02User()
_пользователь.UserNameId = Строка.Формат("{0}.{1}", txtName.Текст, txtSurname.Текст)

Конец, Если

_пользователь.Имя пользователя = txtName.Текст
_пользователь.UserSurname = txtSurname.Текст
_пользователь.PasswordSalt = mSalt
_пользователь.UserPassword = mPassword
_пользователь.Электронная почта = txtEmail.Текст
_пользователь.GroupNameId = cmbGroup.Элемент.Ценность.Метод toString()
_пользователь.RoleNameId = cmbRole.Элемент.Ценность.Метод toString()
_пользователь.Метода changepassword = checkChangePassword.Проверен
_пользователь.UserActive = checkIsActive.Проверен

служба пользователей.Сохранить(_user)


LoadUserData()


'btnDeleteUser.Отменено = Ложь

ВН.Нет.Х.Сообщение.Шоу(Новый MessageBoxConfig() С {.Название = "Информация", .Сообщение = "данные успешно сохранены"., .Кнопки = Функции MessageBox.Кнопки.ОК .Значок = Функции MessageBox.Значок.ИНФОРМАЦИЯ})
Еще

ВН.Нет.Х.Сообщение.Шоу(Новый MessageBoxConfig() С {.Название = "Ошибка", .Сообщение = "пароль не может быть пустым!", .Кнопки = Функции MessageBox.Кнопки.ОК .Значок = Функции MessageBox.Значок.ОШИБКА})
Конец, Если

Поймать ex как исключение
ВН.Нет.Х.Сообщение.Шоу(Новый MessageBoxConfig() С {.Название = "Ошибка", .Сообщение = ех.Сообщение, .Кнопки = Функции MessageBox.Кнопки.ОК .Значок = Функции MessageBox.Значок.ОШИБКА})

возвращенная строка.Пустой
Конец Попытки




Конечная Функция

Защищенный Sub btnDeleteUser_Click(ByVal sender As Object, ByVa

Member 13814990

у меня также есть таблица в БД, все, что я хочу сейчас, это то, что при создании нового пользователя я хочу прочитать ее в своей таблице журнала-Новый пользователь создан --