PDA

View Full Version : سوال: اضافه کردن فیلد به Membership



grobech
جمعه 12 شهریور 1389, 15:12 عصر
سلام به اساتید محترم من می خواستم بدونم ایا میشه به Membership یه فیلد اضافه کرد تا پرسیده بشه مثلا یه فیلد که اسم شهر کاربر رو بخواد و یه سوال دیگه هم داشتم درون کلمه عبور حتما باید یک کاراکتر کاما یا نقطه و ... گذاشت و حد اقل باید هفت تا باشه میشه اینا هم تغییر داد در ضمن من از vs2008 استفاده میکنم متشکرم

Peyman.Gh
جمعه 12 شهریور 1389, 15:27 عصر
درون کلمه عبور حتما باید یک کاراکتر کاما یا نقطه و ... گذاشت و حد اقل باید هفت تا باشه میشه اینا هم تغییر داد

Non-alphanumeric یعنی کاراکتر مورد نظر جز اعداد و حروف الفبا نمیباشد.
بطور مثال !@#$%^&*)(_+/.":
در حالت پیشفرض شما برای Password باید حداقل یک کاراکتر Non-alphanumeric وارد نمایید.یعنی Password باید حداقل یک کاراکتر غیر عددی-غیر حروف الفبایی داشته باشد
ab12&34cd

البته شما میتونید این پیشفرض را کم یا زیاد کنید یا سایر گزینه مانند وارد کردن E-Mail یا ماکزیمم مینیمم Password یا Security Question و... تغییر دهید.
در Web.Config اضافه نمایید :


<membership>
<providers>
<remove name="AspNetSqlMembershipProvider" />
<add name="AspNetSqlMembershipProvider"
type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
connectionStringName="LocalSqlServer"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="True"
applicationName="/"
requiresUniqueEmail="True"
passwordFormat="Hashed"
maxInvalidPasswordAttempts="5"
minRequiredPasswordLength="1"
minRequiredNonalphanumericCharacters="0"
passwordAttemptWindow="10"
passwordStrengthRegularExpression="" />
</providers>
</membership>موفق باشید.

grobech
جمعه 12 شهریور 1389, 16:06 عصر
متشکرم از توجه شما دوست عزیز من این کد رو اضافه کردم پیغام خطلا نشون داد لطفا بگید تو کدام قسمت web.config اضافه کنم و در مورد سوال اولم اگر کسی میتونه منو راهنمایی کنه متشکرم

Peyman.Gh
جمعه 12 شهریور 1389, 16:14 عصر
بین تگ <system.web> در web.config

raziee
جمعه 12 شهریور 1389, 17:45 عصر
ایا میشه به Membership یه فیلد اضافه کرد تا پرسیده بشه مثلا یه فیلد که اسم شهر کاربر رو بخواد
از Profile استفاده کنید.

Mostafa_Dindar
جمعه 12 شهریور 1389, 18:34 عصر
حرف دوستمون درسته , Profile برای همچین کار ساخته شده .

صفر کیلومتر 1389
جمعه 12 شهریور 1389, 19:22 عصر
سلام..
این یه نمونه کد برای استفاده از Profile :




<profile defaultProvider="provider3">

<providers>

<add name="provider3" connectionStringName="connstr"

type="System.Web.Profile.SqlProfileProvider"/>

<properties>

<add name="FullName"/>

<add name="DOB" type="System.DateTime"/>

<add name="Salary" type="System.Double"/>

<group name="Address">

<add name="Street"/>

<add name="Country"/>

<add name="State"/>

<add name="PinCode"/>

</group>

</properties>


</profile>

grobech
جمعه 12 شهریور 1389, 19:49 عصر
متشکرم از لطف اساتید می خواستم بپرسم برای عضویت در سایت از این روش استفاده بشه یا یا خودمون جدولی بسازیم و اطلاعات رو وارد کنیم می خواستم از تجربیات شما دوستان استفاده کنیم متشکرم

raziee
جمعه 12 شهریور 1389, 19:58 عصر
متشکرم از لطف اساتید می خواستم بپرسم برای عضویت در سایت از این روش استفاده بشه یا یا خودمون جدولی بسازیم و اطلاعات رو وارد کنیم می خواستم از تجربیات شما دوستان استفاده کنیم متشکرم
از ممبرشیپ دات نت استفاده کنید و اون رو توسعه بدید.
مثلا به جای استفاده از Profile خود Membership یه Profile خودتون براش بنویسید.

grobech
جمعه 12 شهریور 1389, 21:29 عصر
ببخشید انقدر سوال می کنم من می تونم با پروفایل ها کار کنم اما چطور به Membership معرفی کنم اگر میشه یه مثال کوچیک بزنید متشکرم

raziee
جمعه 12 شهریور 1389, 22:06 عصر
من می تونم با پروفایل ها کار کنم اما چطور به Membership معرفی کنم اگر میشه یه مثال کوچیک بزنید متشکرم
شما در دیتابیستون یک جدول درست میکنید به نام MyProfile (یا هر نام دیگه).
فیلد های این جدول میشن:
UserId با دیتاتایپ uniqueidentifier که به عنوان کلید هست و رابطه یک به یک با جدول aspnet_Users داره.
و فیلدهایی رو که مد نظرتون هست مینویسید.مثل نام- نام شهر- تاریخ تولد- رشته تحصیلی و....

در واقع شما جدولی میسازید که با جداول membership در ارتباط هستند.

grobech
جمعه 12 شهریور 1389, 23:28 عصر
ببخشید دوست عزیز من چند تا سوال برام پیش اومد اول اینکه نوع داده uniqueidentifier چیه و چی توش ریخته میشه ایا لازمه identity specification رو yes کنیم یا نه و با کدوم فیلد جدول aspnet_Users رابطه داره و من یه بار تو قسمت دوم CreateUserWizard روی دکمه Continue کد اضافه کردن به بانک رو نوشتم ولی کار نکرد اساتید محترم خواهش میشه منو راهنمایی کنید

grobech
یک شنبه 14 شهریور 1389, 00:31 صبح
سلام خودم رفتم دنبالش یه چیزایی پیدا کردم میگم اگر مشکل داشت بگید تا آگاه بشم نوع داده uniqueidentifier یک عدد به مبنای hexadecimal است مثل این 6F9619FF-8B86-D011-B42D-00C04FC964FF که اگه identity specification رو روی حالت yes بزاریم به طور خود کار عدد تولید می کنه و توی هر کامپیوتری فرق داره و هیچ کدوم با هم یکی نیستند و بسیار مستعد است برای ترکیب جداول چون میشه دو جدول را بدون هیچ مشکلی ترکیب کرد در مورد قسمت دوم سوالم حلش کردم فقط وقتی کنترلی اضاف می کنم اونو پیدا نمی کنه اگه میشه تو این مورد منو راهنمایی کنید متشکرم

Dim home As TextBox
home = CreateUserWizard1.FindControl("TextBox3")
Response.Write home.Text

raziee
یک شنبه 14 شهریور 1389, 11:20 صبح
با کدوم فیلد جدول aspnet_Users رابطه داره
UserID که در جدول خودتون (MyProfile) ایجاد کردید ارتباط یک به یک با فیلد UserID جدول aspnet_Usersداره.


فقط وقتی کنترلی اضاف می کنم اونو پیدا نمی کنه اگه میشه تو این مورد منو راهنمایی کنید متشکرم
Dim home As TextBox
home = CreateUserWizard1.FindControl("TextBox3")
Response.Write home.Text
به این شیوه کار کنید.

TextBox txt = ((TextBox)CreateUserWizard1.FindControl("TextBox1"));
Response.Write(txt.Text.ToString());
فقط یادتون باشه که تو چه رویدادی ازش استفاده میکنید.

grobech
یک شنبه 14 شهریور 1389, 12:09 عصر
متشکرم دوست عزیز میشه کد رو به vb بنویسید چون من #c بلد نیستم TextBox قبل از
CreateUserWizard1 چه معنی میده متشکرم

TextBox txt = ((TextBox)CreateUserWizard1.FindControl("TextBox1" ));

raziee
یک شنبه 14 شهریور 1389, 20:54 عصر
میشه کد رو به vb بنویسید
تبدیلش کاری نداره.
نرم افزار های مبدل هم زیاده.(از این چیزا نخواهین)

TextBox قبل از
CreateUserWizard1 چه معنی میده متشکرم
برای دستور FindControl به کار میره. و درواقع Data Type شیئ مورد نظر رو مفهمونه.