Форум программистов, компьютерный форум, киберфорум
C#: Веб-сервисы и WCF
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.76/21: Рейтинг темы: голосов - 21, средняя оценка - 4.76
0 / 0 / 0
Регистрация: 21.02.2014
Сообщений: 35
1

Добавить данные в Базу Данных WCF сервиса

24.05.2014, 16:25. Показов 4302. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброе время суток, форумчане! Нуждаюсь в вашей помощи! Выручайте!

Дело состоит в следующем:
1. У меня есть клиентское приложение(сделано в Windows Forms),
2. Есть отдельное приложение WCF сервиса, к которой подключена локальная БД(.mdf).
3. В конечном итоге связываю эти два приложения.
4. В клиентской форме вывел в dataGridView данные из локальной базы данных, которая была в проекте WCF сервиса.
5. Теперь пытаюсь, чтобы была возможность добавить данные в локальную БД. Пользователь заполняет textBox-ы и нажимает кнопку "Сохранить"

Код, который я использовал для клиентская части в Windows Forms:
Кликните здесь для просмотра всего текста

C#
1
2
3
4
5
6
7
8
9
10
private void buttonSave_Click(object sender, EventArgs e)
        {
            ServiceReference.UserDetails objuserdetail = new ServiceReference.UserDetails();
            objuserdetail.UserName = textBoxUserName.Text;
            objuserdetail.Password = textBoxPassword.Text;
            objuserdetail.Country = textBoxCountry.Text;
            objuserdetail.Email = textBoxEmail.Text;
            objService.InsertUserDetails(objuserdetail); // To insert the data
            showdata();
        }


Код который использовал для WCF сервиса:
Кликните здесь для просмотра всего текста

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
public string InsertUserDetails(UserDetails userInfo)
        {
            string Message;
            SqlConnection con = new SqlConnection(@"Data Source=.\SQLExpress;
                                                                      AttachDbFilename=|DataDirectory|Registration.mdf;
                                                                      Integrated Security=True;
                                                                      User Instance=True;");
            con.Open();
            SqlCommand cmd = new SqlCommand("insert into RegistrationTable(UserName,Password,Country,Email) values(@UserName,@Password,@Country,@Email)", con);
            cmd.Parameters.AddWithValue("@UserName", userInfo.UserName);
            cmd.Parameters.AddWithValue("@Password", userInfo.Password);
            cmd.Parameters.AddWithValue("@Country", userInfo.Country);
            cmd.Parameters.AddWithValue("@Email", userInfo.Email);
            int result = cmd.ExecuteNonQuery();
            if (result == 1)
            {
                Message = userInfo.UserName + " Details inserted successfully";
            }
            else
            {
                Message = userInfo.UserName + " Details not inserted successfully";
            }
            con.Close();
            return Message;
        }


Вопрос: Что было сделано мной не так? Почему выводится данное уведомление об ошибке?!

Уведомление об ошибке выводиться на строке objService.InsertUserDetails(objuserdetail); (клиентская часть Windows Forms):
Кликните здесь для просмотра всего текста

Необработанное исключение типа "System.ServiceModel.FaultException" в mscorlib.dll

Дополнительные сведения: Сервер не смог обработать запрос в связи с внутренней ошибкой. Для получения дополнительных сведений об ошибке либо включите IncludeExceptionDetailInFaults (с помощью атрибута ServiceBehaviorAttribute или через поведение < serviceDebug >) на сервере для того чтобы выслать информацию об исключении назад клиенту, или включить трассировку согласно инструкции Microsoft .NET Framework SDK и проверить записи журнала трассировки клиента.


Нужна помощь! Выручайте!!!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.05.2014, 16:25
Ответы с готовыми решениями:

Как добавить добавить данные в базу данных посредством LINQ
Как добавить добавить данные в базу данных посредством LINQ to SQL Ошибка: Нарушение...

Как получить данные от wcf сервиса через SOAP
Имеется wcf service. Необходимо вызвать его метод и получить данные. Возможно ли это сделать через...

Данные table добавить в базу данных
Всем привет. Помогите решить вопрос. Есть таблица. В которую ввожу данные (Коэффициент весомости,...

Как добавить данные из Observablecollection в базу данных?
Здравствуйте) Подскажите пожалуйста, как добавить элемент Observablecollection в базу данных?...

6
995 / 893 / 354
Регистрация: 24.03.2014
Сообщений: 2,381
Записей в блоге: 2
25.05.2014, 17:07 2
Цитата Сообщение от BigApple Посмотреть сообщение
Для получения дополнительных сведений об ошибке либо включите IncludeExceptionDetailInFaults (с помощью атрибута ServiceBehaviorAttribute или через поведение < serviceDebug >) на сервере для того чтобы выслать информацию об исключении назад клиенту, или включить трассировку согласно инструкции Microsoft .NET Framework SDK и проверить записи журнала трассировки клиента.
После этих действий всё будет понятно вероятнее всего...
0
0 / 0 / 0
Регистрация: 21.02.2014
Сообщений: 35
25.05.2014, 18:49  [ТС] 3
Spawn, Спасибо, что откликнулись! Прощу помогите решить эту проблему! В интернете в официальном справочнике Microsoft вычитал, что данное свойство IncludeExceptionDetailInFaults - Возвращает или задает значение, указывающее, следует ли включить сведений об управляемых исключениях в сведения об ошибках SOAP, возвращаемых клиенту для отладки. Не могу понять куда вставить и как именно подключить данное свойство?! Подскажите пожалуйста!

Вот справочник: http://msdn.microsoft.com/ru-r... .110).aspx
0
995 / 893 / 354
Регистрация: 24.03.2014
Сообщений: 2,381
Записей в блоге: 2
25.05.2014, 21:42 4
Используйте, например, атрибут ServiceBehaviorAttribute на классе Вашего сервиса:
C#
1
2
3
4
5
[ServiceBehavior(IncludeExceptionDetailInFaults=true)]
public class MyService : IMyService
{
    // ...
}
0
0 / 0 / 0
Регистрация: 21.02.2014
Сообщений: 35
25.05.2014, 21:57  [ТС] 5
Spawn, Спасибо за совет! Сейчас надо попробовать!

В целом за основу я взял эту статью: http://www.c-sharpcorner.com/U... iew-in-wi/

Хотел реализовать ее, однако сохранить данные не удалось! Сразу видно, что вы знающий человек! Можете посмотреть данную статью и сказать свой профессиональный вердикт пожалуйста?!
0
1 / 1 / 0
Регистрация: 21.02.2014
Сообщений: 14
25.05.2014, 23:39 6
BigApple, Spawn, интересную статью вы нашли, было интересно и я решила собрать данный проект... как вы и сказали все работает кроме возможности сохранить... Однако в статье у автора все получилось и скриншоты вроде бы как есть подтверждащие это. Парадокс какой-то и вправду...
0
0 / 0 / 0
Регистрация: 21.02.2014
Сообщений: 35
25.05.2014, 23:47  [ТС] 7
Spawn, mir-a, возможно вы знаете иные способы добавить данные в локальную БД связав это с службой WCF?! Подскажите пожалуйста если знаете! Выручайте!

Добавлено через 3 минуты
Spawn, вроде бы вписал данный атрибут ServiceBehaviorAttribute о котором вы упоминали в сервисную часть и обновил ссылку на службу в клиентской части, однако никаких изменений. Выводится та же ошибка! Либо я не правильно его вписал...
0
25.05.2014, 23:47
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.05.2014, 23:47
Помогаю со студенческими работами здесь

Как добавить данные из textbox-ов в базу данных?
Подскажите где ошибка пытаюсь добавить из textbox-ов данные в базу данных string connetionString...

Введенные пользователем данные в текстовое поле нужно добавить в базу данных
Введеные пользователем данные в техтовое поле нужно добавить в бзу данных. Получилось только...

Как работать с Sql базой данных при создании WCF сервиса?
Доброе времени суток! Помогите понять как работать с Sql базой данных,при создании WCF...

Как через TextBox добавить данные в базу данных с помощью LINQ to SQL?
Доброго времени суток! а можно с помощью Linq to Sql Добавлять данные в базу данных? и каким...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru