Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class UserRepository : IDisposable
- {
- private readonly UserDataContext context;
- public UserDataContext Context
- {
- get { return context; }
- }
- public UserRepository()
- {
- context = new UserDataContext(UserDataContext.DBConnectionString);
- CreateDatabase();
- }
- private void CreateDatabase()
- {
- if (context.DatabaseExists() == false)
- {
- context.CreateDatabase();
- }
- }
- public User GetByID(int id)
- {
- return context.GetTable<User>().FirstOrDefault(e => e.UserId.Equals(id));
- }
- public User GetByUsername(string username)
- {
- return context.GetTable<User>().FirstOrDefault(e => e.UserName.Equals(username));
- }
- public void Save(User user)
- {
- if (user.UserId > 0)
- {
- context.GetTable<User>().Attach(user, true);
- }
- else
- {
- context.GetTable<User>().InsertOnSubmit(user);
- }
- context.SubmitChanges();
- }
- public List<User> GetAll()
- {
- return context.GetTable<User>().ToList();
- }
- public int Count()
- {
- return context.GetTable<User>().Count();
- }
- public void Dispose()
- {
- if (context != null)
- {
- context.Dispose();
- }
- }
- }
- [Table]
- public class User
- {
- [Column(IsPrimaryKey = true, IsDbGenerated = true, DbType = "INT NOT NULL Identity", CanBeNull = false, AutoSync = AutoSync.OnInsert)]
- public int UserId { get; set; }
- [Column]
- public string UserName { get; set; }
- [Column]
- public string Password { get; set; }
- }
- public class UserDataContext : DataContext
- {
- public static string DBConnectionString = "Data Source=isostore:/User.sdf";
- public UserDataContext(string connectionString) : base(connectionString) { }
- public Table<User> Users;
- }
Add Comment
Please, Sign In to add comment