Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <connectionStrings>
- <add name="MySQLContext" connectionString="server=localhost;database=db;uid=root;password=xxxxxxxx" providerName="MySql.Data.MySqlClient" />
- </connectionStrings>
- <entityFramework codeConfigurationType="MySql.Data.Entity.MySqlEFConfiguration, MySql.Data.Entity.EF6">
- <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework"/>
- <providers>
- <provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6"/>
- <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer"/>
- </providers></entityFramework>
- public class UsersContext : DbContext
- {
- public UsersContext()
- : base()
- {
- }
- // Constructor to use on a DbConnection that is already opened
- public UsersContext(DbConnection existingConnection, bool contextOwnsConnection)
- : base(existingConnection, contextOwnsConnection)
- {
- }
- public DbSet<LoginUsers> LoginUsers { get; set; }
- }
- [Table("login_users")]
- public class LoginUsers
- {
- public int Id { get; set; }
- public string Username { get; set; }
- public string Password { get; set; }
- public string Name { get; set; }
- public DateTime Created_At { get; set; }
- public bool Active { get; set; }
- }
- private static string connectionString = ConfigurationManager.ConnectionStrings["MySQLContext"].ConnectionString;
- public static bool RegisterUser(string name, string username, string password, out string errorMessage)
- {
- string hashedPassword = SHA256Encrypt(password);
- using (MySqlConnection connection = new MySqlConnection(connectionString))
- {
- connection.Open();
- MySqlTransaction transaction = connection.BeginTransaction();
- try
- {
- // DbConnection that is already opened
- using (UsersContext context = new UsersContext(connection, false))
- {
- // Passing an existing transaction to the context
- context.Database.UseTransaction(transaction);
- context.LoginUsers.Add(new LoginUsers()
- {
- Name = name,
- Username = username,
- Password = hashedPassword,
- Created_At = DateTime.UtcNow,
- Active = true
- });
- context.SaveChanges();
- }
- errorMessage = "";
- transaction.Commit();
- return true;
- }
- catch (Exception ex)
- {
- transaction.Rollback();
- errorMessage = "Contain error";
- return false;
- }
- }
- }
- context.LoginUsers.Add(new LoginUsers()
- {
- Name = name,
- Username = username,
- Password = hashedPassword,
- Created_At = DateTime.UtcNow,
- Active = true
- });
- DEFINER = `admin`@`%`
- connectionString="server=localhost;user id=myUserId;Password=*****;database=mydatabase; Allow User Variables=True"
Add Comment
Please, Sign In to add comment