PDA

View Full Version : سوال: چگونه ConnectionString ـه Profile را تغییر بدهیم؟



ho0rezam
سه شنبه 28 تیر 1390, 20:53 عصر
سلام و خسته نباشید به اساتید ASP.NET

والا یه table واسه profile ساختم میخوام اطلاعات کاربری رو تویه این tbl سیو کنم...اما مشکل اینجاست که کانکشن استرینگه profile به دیتابیس از پیش تعیین شده ی asp.net متصل هست...

آیا راهی وجود داره که بتونم این کانکشن استرینگ رو به دیتابیس خودم بایند کنم؟
پیشاپیش ممنون از راهنمایی هاتون

salehbagheri
سه شنبه 28 تیر 1390, 22:48 عصر
والا یه table واسه profile ساختم میخوام اطلاعات کاربری رو تویه این tbl سیو کنم...اما مشکل اینجاست که کانکشن استرینگه profile به دیتابیس از پیش تعیین شده ی asp.net متصل هست...والا فکر نکنم با تغییر Connection هم بتوانید به مشکلتون پایان بدید! چون Profile ها یا سیستم Membership تعریف شده در ASP.NET با بیشتر از 10 تا جدول سروکار داره نه یکی!

اما برای تغییر Connection String باید مراحل لینک زیر رو پیگیری کنید!
http://www.studiocoast.com.au/knowledgebase/6/aspnet/using-sql-server-instead-of-aspnetdbmdf.aspx

ho0rezam
سه شنبه 28 تیر 1390, 23:59 عصر
ممنون دوست عزیز..پس بذارید مشکلم رو کامل توضیح بدم...شاید شما هم نظری داشته باشید در موردش و بتونه بهم کمک کنه

والا یه table ساختم که اطلاعات کاربری رو میگیره و در خودش ذخیره میکنه ، از نام خانوادگی و تاریخ عضویت و level کاربر گرفته تا آدرس محل زندگی و ...
توی master page چندین label قرار دادم که اطلاعات کاربرها رو نشون میده ، مثلا یه label تاریخ عضویت رو نشون میده و بقیه هم به همین ترتیب هستن.
مشکلم اینجاست که وقتی کاربر Login کرد و وارد سایت شد ، اطلاعات کاربری مخصوص خودش در این label ها جایگذاری بشن ، که دقیقا نمیدونم چطور باید انجام بدم.
خودم چندین راه به نظرم رسیده نمیدونم درست هستن یا نه:


وقتی کاربر دکمه ورود رو زد ، علاوه بر لاگین شدن نام کاربریش رو از textbox بگیرم و با session به صفحه بعد بفرستم و در نهایت از table واکشی کنم و در label ها قرار بدم. که به نظرم این خودش دوتا مشکل داره: اول اینکه وابسته به لاگین و لاگ اوت کردنه کاربر نیست و هر نامی رو در مرورگر بنویسیم اطلاعات کاربر بیرون میاد (البته فک میکنم بشه با اعتبار سنجی که آیا کاربر لاگین کرده یا نه این مشکل رو حل کرد ، یعنی وقتی کاربر لاگین کرده باشه واکشی صورت بگیره، یا از روش کد گذاری استفاده کنم) - دوم اینکه توی این روش Response.redirect فقط میشه به صفحات فرستاد و نمیشه به masterpage هم redirect کرد...البته اگه امکانش هست لطفا راهنمایی کنی
روش بعدی که به ذهنم رسیده بدون session هست ، نمیدونم همچین کاری امکان پذیر هست یا نه....فرض کنید کاربر لاگین کرده و در asp:LoginName نام کاربریش در حال نمایش هست، فکر کردم شاید امکانش باشه که در codebehind ، این نام رو از asp:LoginName بگیریم به string تبدیل کنیم و سپس با استفاده از اون نام ، اطلاعات کاربر رو واکشی کنیم.
روش بعدی هم که زیاد برنامه نویسان ازش خوششون نمیاد profile هست. که البته با این پروفایل هم مشکلاتی دارم - مشکل هم اینه که دیتابیس من Custom هست و Default خود برنامه نیست و عملا ConnectiionString پروفایل متصل به دیتابیس خود برنامه هست و بنده هم نمیدونم چطور باید این مورد رو تغییر بدم

در کل ممنون میشم راه منطقی و درست رو بهم توضیح بدید.
با تشکر

ho0rezam
چهارشنبه 29 تیر 1390, 01:10 صبح
مشکلم حل شد....از روش دوم استفاده کردم...خیلی خنده داره تویه master page واسه اینکه بشه از User.Identity.Name; استفاده کرد باید قبلش یه page میذاشتم.