الكلمة الرئيسية غير مدعومة: “معرف المستخدم”.


أنا أستخدم سلسلة الاتصال هذه ولكن كلما حاولت الاتصال بقاعدة البيانات يظهر خطأ “الكلمة الأساسية غير مدعومة: ‘معرف المستخدم’.”
إليك سلسلة الاتصال الخاصة بي:

string connectionstring = @"user id=" + @txtServerUsername.Text + ";password=" + @txtServerPassword.Text + ";server=" + @txtServerName.Text + ";Trusted_Connection=yes;database=" + @txtDatabaseName.Text + ";connection timeout=30";

الحل 4

مرحبًا فلوريدا،
فيما يلي الطرق القياسية لإنشاء سلسلة اتصال في ملف cofig الخاص بالتطبيق.

مصادقة ويندوز:

XML
<connectionStrings>
  <add name="connString" connectionString="Data Source=SPICITY1140\SQLEXPRESS;Initial Catalog=SPI_RFID2016;Integrated Security=True" providerName="System.Data.SqlClient" />
</connectionStrings>

مصادقة خادم SQL:

VB.NET
<connectionstrings>
  <add name="connString" connectionstring="Data Source=MT000XBSQL107\INST2;Initial Catalog=SRA;Persist Security Info=True;User ID=SRA_SSIS;Password=password">
   providerName="System.Data.SqlClient" />
</add></connectionstrings>

في كود C#:

ج #
private string conStr = ConfigurationManager.ConnectionStrings["connString"].ConnectionString;

برمجياً:

ج #
private DbConnection CreateConnection(string connectionString)
{
    return new SqlConnection(connectionString);
}

private string CreateConnectionString(string server, string databaseName, string userName, string password)
{
    var builder = new SqlConnectionStringBuilder
    {
        DataSource = server, // server address
        InitialCatalog = databaseName, // database name
        IntegratedSecurity = false, // server auth(false)/win auth(true)
        MultipleActiveResultSets = false, // activate/deactivate MARS
        PersistSecurityInfo = true, // hide login credentials
        UserID = userName, // user name
        Password = password // password
    };
    return builder.ConnectionString;
}

كيف تستعمل:

ج #
public void ConnectoToDbWithEf6()
{
    using(var connection = CreateConnection(CreateConnectionString("server", "db", "you", "password")
    {
        using(var context = new YourContext(connection, true))
        {
            foreach(var someEntity in context.SomeEntitySet)
            {
                Console.WriteLine(someEntity.ToString());
            }
        }
    }

}

شكرًا،
براتيك

الحل 1

يرجى الرجوع إلى هذا ايمي مساعدتك[^]

الحل 3

XML
<connectionStrings>
  <add name="EmployeeContext" connectionString="Data Source=SQLEXPRESS;Initial Catalog=Sample;User ID=ID Password=PWD;" providerName="System.Data.SqlClient" />
</connectionStrings>
يقتبس:

أثناء إجراء اتصال بقاعدة البيانات أحصل على هذا الخطأ (باستخدام إطار عمل الكيان). بعد معرفة المشكلة بالضبط، قمت بإزالة المسافة بين معرف المستخدم والحصول على التفاصيل من قاعدة البيانات، ما عليك سوى إزالة المسافة بين معرف المستخدم أو تحديد معرف المستخدم وكلمة المرور بشكل صحيح في سلسلة اتصال

コメント

タイトルとURLをコピーしました