خطا در اتصال به دیتابیس در سی شارپ
سلام دوستان اتصال برنامم به پایگاه داده از طریق connectionstring به صورت داینامیک کردم.
و هر کاری میکنم اتصال بر قرار نمیشه =.
اینم دستورات کدم:
public static string BuildEntityConnection(string ADOStringConnection)
{
var entityConnection = new EntityConnectionStringBuilder
{
Provider = "System.Data.SqlClient",
ProviderConnectionString = ADOStringConnection,
Metadata = "rest://*"
};
return entityConnection.ToString();
}
private void Button_Click_1(object sender, RoutedEventArgs e)
{
var entityconnectionstring = BuildEntityConnection("Date Source=" + txt_nameserver.Text.Trim() + ";Initial Catalog=" + txt_namedatebase.Text.Trim() +
";User Id=sa;Password=" + txt_pass.Text.Trim() + ";Integrated Security=false");
try
{
RegistryKey connectionkey = Registry.CurrentUser.CreateSubKey("SOFTWARE\\foroosh");
try
{
connectionkey.SetValue("CreateConnection",CrypsionAlgoritm.EncryptTextUsingUTF8(entityconnectionstring));
}
catch
{
MessageBox.Show("در ارتباط با سرور دچار مشکل شده است لطفا بعدا امتحان کنید");
}
finally
{
connectionkey.Close();
}
MessageBox.Show("ارتباط با سرور بر قرار شد");
this.Close();
}
catch
{
MessageBox.Show("در ارتباط با سرور دچار مشکل شده است لطفا بعدا امتحان کنید");
}
}
تا این جا دستورات کار میکنه توی ریجستر ذخیره میشه و کانکشن استرینگ ایجاد میشه ولی نمیتونم اتصال بر قرار کنم
اینم کد های اتصال به دیتابیس استفادع کردم هست
private void Window_Loaded(object sender, RoutedEventArgs e)
{
///دستورات چک کردن ریجستر واسه کانکت شده به دیتابیس هست یانه
string RegisterConnectionstring = "";
RegistryKey connectionkey = Registry.CurrentUser.CreateSubKey("SOFTWARE\\foroosh");
RegisterConnectionstring = (string)connectionkey.GetValue("CreateConnection");
try
{
if (RegisterConnectionstring == "")
{
MessageBox.Show("ارتباط با سرور بر قرار نیست");
vorod.IsEnabled = false;
}
else
{
publicClass.Connectionstring = CrypsionAlgoritm.EncryptTextUsingUTF8(RegisterConnectionstring);
}
}
catch
{
MessageBox.Show("ارتباط با سرور بر قرار نیست");
vorod.IsEnabled = false;
}
}
اینم خطایی ک میده:
System.ArgumentException: 'The value's length for key 'initial catalog' exceeds it's limit of '128'.'
به نظرتون مشکل چیست؟
چیکار کنم؟
طبق کدهایی کهقرار دادید شما کانشکن استرنگ رو با پسورد نوشتید و از طرفی گفتید دیتابیس شما رمز عبور نداره.
خب اینجوری خطا پیش میاد
برای دیتابیس خودتون یک رمز عبور تعریف کنید.
کانکشن استرینگ در سی شارپ برای اتصال به Sql Server باید به صورت زیر رباشه. Connection String شما کامل نیست
"Data Source=" + txt_serverIP.Text.Trim() + ";Initial Catalog=" + txt_DBname.Text.Trim()
+ ";user Id=sa;Password=" + txt_dbpassword.Text.Trim() + ";Integrated Security=false"
ضمنا برای Sql Server خودتون حتما رمز عبور تعیین کنید
قطعه کدی ک گزاشتین منم توی برنامم مثل همین نوشتم
کجاش کامل نیست؟
پاسخ به ghazale
فکر می کنم شما گفته بودید که دیتابیس شما رمز عبور نداره و پسورد رو توی کانکشن استرینگ نذاشته بودید. اسم دیتابیس شما چی هست دقیقا؟ احتمالا نام دیتابیس شما خیلی طولانی هست
نام دیتابیس نباید از 128 کاراکتر بیشتر بشه
- آموزش استفاده از SignalR در Asp.net Core با مثال عملی
- ادغام چند گزارش استیمول سافت بصورت پی دی اف در یک فایل
- نحوه تغییر استایل کامپوننت select2 چگونه است ؟
- چگونه امنیت پروژه را در Asp.net Core افزایش دهیم ؟
- ارسال پارامتر در دستور window.open جی کویری
- ارسال پارامتر از طریق جاوااسکریپت با کلیک روی تگ a
- خطای 500 زمان اجرا شدن پروژه روی هاست
- کویری نویسی در استیمول سافت جهت فیلتر اطلاعات
- نمایش صفحه در پنجره جدید با کلیک روی لینک (تگ a) در Asp
- افزودن مقادیر به صورت دستی به List دریافت شده از ریپازیتوری
- مشکل تاریخ شمسی در سی شارپ
- نمایش گزارش stimulsoft روی کلاینت
- تفاوت های سی شارپ 8 با نسخه های قبلی چیه؟
- انتخاب چند سطر دلخواه توسط چک باکس در DataGrid و محاسبه جمع سطرهای انتخاب شده
- نمایش نوتیفکیشن در سی شارپ
- ارسال پارامتر از سی شارپ به استیمول سافت
- عدم نمایش عکس در دیتاگرید ویو در wpf
- Library Animation برای کنترلهای WPF
- مشکل در تغییر مقدار Text کنترل RibbonBar در کامپوننت DevExpress
- قرار دادن مقادیر ارسالی یک ستون از جدول به صورت سطری در استیمول