Linq to SQL Basic Operations

The following is a very brief demonstration of Linq to SQL to retrieve, insert, update, and delete a row of data. I make no claims that this is the most efficient or best practice of Linq, but simply a starting point.

There are various resources all over the internet for extended information on Linq; these would be better suited to discuss why to use Linq as well as advanced how-to information as well.

For demonstration purposes, we’ll use a fictious table schema based around a User.

Retrieve Record

public static User GetUser(int UserID)
{
    MasterDataContext dc = new MasterDataContext();
    var query = from a in dc.Users
                where a.UserID == UserID
                select a;

    return query.Single<User>();
}

Create Record

public static void CreateUser(string EmailAddress, string Password, string Alias, string FirstName, string LastName, string City, string State, string Country, string Zip, string Description)
{
    MasterDataContext dc = new MasterDataContext();
    var usr = new User();

    usr.Email = EmailAddress;
    usr.Password = Password;
    usr.Alias = Alias;
    usr.FirstName = FirstName;
    usr.LastName = LastName;
    usr.City = City;
    usr.State = State;
    usr.Country = Country;
    usr.Zip = Zip;
    usr.Description = Description;

    usr.Created = DateTime.Now;
    usr.LastUpdated = DateTime.Now;

    dc.Users.InsertOnSubmit(usr);
    dc.SubmitChanges();
}

Update Record

public static void UpdateUser(int UserID, string EmailAddress, string Password, string Alias, string FirstName, string LastName, string City, string State, string Country, string Zip, string Description)
{
    MasterDataContext dc = new MasterDataContext();
    var query = from a in dc.Users
                where a.UserID == UserID
                select a;

    var usr = query.Single();

    usr.Email = EmailAddress;
    usr.Password = Password;
    usr.Alias = Alias;
    usr.FirstName = FirstName;
    usr.LastName = LastName;
    usr.City = City;
    usr.State = State;
    usr.Country = Country;
    usr.Zip = Zip;
    usr.Description = Description;

    usr.LastUpdated = DateTime.Now;

    dc.SubmitChanges();
}

Delete Record

public static void DeleteUser(int UserID)
{
    MasterDataContext dc = new MasterDataContext();
    var query = from a in dc.Users
                where a.UserID == UserID
                select a;

    var usr = query.Single<User>();

    dc.Users.DeleteOnSubmit(usr);
    dc.SubmitChanges();
}

One thought on “Linq to SQL Basic Operations

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s