Создать исключение ошибки для проекта wcf

#c# #entity-framework #wcf

#c# #entity-framework #wcf

Вопрос:

Я пытаюсь создать faultexception для моего класса btnUpdate book. Я новичок в WCF, и я не уверен, в какую часть мне нужно добавить сообщение об исключении клиента или службы?

Это моя клиентская часть

 protected void BtnUpdateBook(object sender, DirectEventArgs e)
{
    Service1Client client = new Service1Client();
    ConcreteBook book = new ConcreteBook
    {
        BookId = Convert.ToInt32(txtBookId.Text),
        BookName = txtBookName.Text,
        BookDescription = txtBookDescription.Text
    };
    client.UpdateBook(book);
    strBook.DataSource = client.GetAll();
    strBook.DataBind();
    client.Close();
}
 

И это сервис

 public class UpdateBook
{
    public void BookUpdate(ConcreteBook book)
    {
        BookEntities db = new BookEntities();
        Book upBook = db.Books.FirstOrDefault(x => x.bookId == book.BookId);
        upBook.bookName = book.BookName;
        upBook.bookDescription = book.BookDescription;
        db.SaveChanges();
    }
}
 

Редактировать

Я создаю класс BSException в службе

 [DataContract] 
public class BSException 
{ 
    private int id;

    [DataMember] 
    public int Id 
    { 
        get { return id; } 
        set { id = value; } 
    } 

    private string exceptionMessage; 

    [DataMember] 
    public string ExceptionMessage 
    { 
        get { return exceptionMessage; } 
        set { exceptionMessage = value; } 
    }
}
 

и я пытаюсь использовать этот класс в своем классе updatebook в службе

 public void BookUpdate(ConcreteBook book) 
{ 
    BookEntities db = new BookEntities(); 
    try 
    { 
        Book upBook = db.Books.FirstOrDefault(x => x.bookId == book.BookId); 
        upBook.bookName = book.BookName; 
        upBook.bookDescription = book.BookDescription; 
        db.SaveChanges();
    }
    catch(Exception) 
    {
        BSException exception = new BSException(); 
        //exception. //problem is here??
    }
}
 

Комментарии:

1. Оба должны знать исключение. Служба выдает его, и Клиент должен отреагировать на него.

2. Пожалуйста, добавьте эту информацию в свой вопрос. Его почти невозможно прочитать в комментариях. И сделайте свой вопрос более ясным. Я все еще не совсем понимаю, что ты хочешь знать.

3. Извините, я новичок на этом сайте, поэтому я не смог четко добавить свой код.

4. Нет проблем, приятель. Но, пожалуйста, обновите свой вопрос с помощью вашего опубликованного кода в комментариях. Тогда это более заметно для всех, кто просматривает ваш вопрос. Чтобы пометить текст как код, используйте `вместо»

5. извините @Raban, я не понимаю, что мне нужно делать, когда я добавлю свой код в текстовую область?