WCF服务在Visual Studio C中将数据插入数据库#

时间:2014-03-16 20:48:11

标签: c# visual-studio-2010 wcf

我已经创建了一个WCF服务并设置了一个SQL数据库,我想创建一个允许我将数据插入数据库的服务。

这是我的WCF服务以及我用来执行此操作的方法:

namespace WcfService1
{
    [ServiceContract]
    interface IBookingsService1
    {
        [OperationContract]
        bool InsertBooking(Booking obj);
    }

[DataContract]
public class Booking
{
    [DataMember]
    public int bk_BookingID;
    [DataMember]
    public string bk_StudentID;
    [DataMember]
   public string bk_Forename;
    [DataMember]
   public string bk_Surname;
    [DataMember]
    public string bk_EventID;
    [DataMember]
    public string bk_EventTitle;
    [DataMember]
    public string bk_EventDesc;
    [DataMember]
    public string bk_EventDate;
    [DataMember]
    public string bk_EventTime;
    [DataMember]
    public string bk_EventLocation;
}

SVC

namespace WcfService1
{
    public class BookingsService1 : IBookingsService1
    {
        public bool InsertBooking(Booking obj)
        {
            bookingList.Add(obj);
            return true;
        }

       public static List<Booking> bookingList = new List<Booking>()
       {
            new Booking {bk_BookingID = 1, 
                              bk_StudentID = "11432857",
                              bk_Forename = "Mani",
                              bk_Surname = "Singh",
                              bk_EventTitle = "Bonk",
                              bk_EventDesc = "sdfsdfsd",
                              bk_EventDate = "11/11/14",
                              bk_EventTime = "21.30",
                              bk_EventLocation = "Forum"}
        };
    }

    public static class LinqUpdates
    {
        public static void Update<T>(this IEnumerable<T> source, Action<T> action)
        {
            foreach (var item in source)
                action(item);
        }
    }

目前我在猜测何时使用该服务,数据只是存储在公共类'预订'中,但我希望它进入名为'BookingTable1'的表中。

我该如何实现?请帮助我,因为我一直试图弄清楚它已经有一段时间了。谢谢。

1 个答案:

答案 0 :(得分:1)

您的实施没有错。在插入操作中使用任何数据库操作。例如,使用带有wcf的实体框架(ef创建表作为契约,或者你可以强制执行)

    public bool InsertBooking(Booking obj)
    {
        using(var db  = new Model1Entities())
        {
            db.Bookings.Attach(obj);
            db.Bookings.Add(obj);

            db.SaveChanges();
        }
        return true; // or return obj
    }

否则你可以使用任何类似的那个。