How to create a new login in SQL Server 2008 R2 using C #
I am using Visual Studio 2012 and C #
I am using below code to create login and user for my SQL Server database using C #
It works fine for SQL Server 2012, but doesn't work on SQL Server 2008 R2.
Here's my code:
var serverName = "."; // Your SQL Server Instance name
var databaseName = "Test"; // Your database name
var loginName = "testuserY"; // Your login name (should not exist - or you should add code to check if the login exists)
Server svr = new Server(serverName);
var db = svr.Databases[databaseName];
if (db != null)
{
Login login = new Login(svr, loginName);
login.DefaultDatabase = "master"; // Logins typically have master as default database
login.LoginType = LoginType.SqlLogin;
login.Create("foobar", LoginCreateOptions.None); // Enter a suitable password
login.Enable();
User user = new User(db, loginName);
user.UserType = UserType.SqlLogin;
user.Login = login.Name;
user.Create();
user.AddToRole("db_owner");
Server svr = new Server(serverName);
This code and other code after it will not run in SQL Server 2008 R2.
Help me please.
source to share
I found the problem. to solve this problem you have to copy these DLLs into your application folders:
Microsoft.SqlServer.ConnectionInfo.dll
Microsoft.SqlServer.Management.Sdk.Sfc.dll
Microsoft.SqlServer.Smo.dll
Microsoft.SqlServer.SqlClrProvider.dll
Microsoft.SqlServer.SqlEnum.dll
source to share