پرسش و پاسخ در برنامه نویسی ASP.NET

bivafa_1990

عضو جدید
Drop Down List

Drop Down List

سلام
من دارم یه سایت طراحی میکنیم تو یه قسمتی از سایتم می خوام از یه فرمول استفاده کنم اینم اینطوریه که من تو صفحه 13تا drop down دارم تو هر کدوم از اینا از 0 تا 20 پر کردم بعد می خوام زمانی که مشتری هر کدوم از مقادیر اینارو انتخاب کرد مقدار انتخاب شده مشتری ضرب بشه با یه عدد ثابت(اعداد ثابت هر کدوم فرق داره) بعد همه اعداد بدست اومده با هم جمع بشن بعد که این عددا بدست اومدن بندازم تو فرمول
حالا مشکل من این اینه که چطور باید عدد انتخاب شده مشتریو با عدد ثابت خودم ضرب کنم بعد جمعشون کنم بندازم تو فرمول
 

moradaliyan

عضو جدید
نحوه گرفتن مقدار از DropDownList

نحوه گرفتن مقدار از DropDownList

سلام من دارم یه سایت طراحی میکنیم تو یه قسمتی از سایتم می خوام از یه فرمول استفاده کنم اینم اینطوریه که من تو صفحه 13تا drop down دارم تو هر کدوم از اینا از 0 تا 20 پر کردم بعد می خوام زمانی که مشتری هر کدوم از مقادیر اینارو انتخاب کرد مقدار انتخاب شده مشتری ضرب بشه با یه عدد ثابت(اعداد ثابت هر کدوم فرق داره) بعد همه اعداد بدست اومده با هم جمع بشن بعد که این عددا بدست اومدن بندازم تو فرمول حالا مشکل من این اینه که چطور باید عدد انتخاب شده مشتریو با عدد ثابت خودم ضرب کنم بعد جمعشون کنم بندازم تو فرمول

با سلام و دورد بر دوست گرامی
من درخواست شما را با 2 عدد DropDownList و به ساده ترین شکل انجام دادم.روش های دیگری هم وجود دارد.
قسمت Markup صفحه حاوی کنترل ها با تنظیمات اعمال شده به صورت زیر می باشد :
کد:
<body dir="rtl">
    <form id="form1" runat="server">
    <div>
        عدد را انتخاب کنید :
        <asp:DropDownList ID="ddlNumber1" runat="server">
            <asp:ListItem>0</asp:ListItem>
            <asp:ListItem>1</asp:ListItem>
            <asp:ListItem>2</asp:ListItem>
            <asp:ListItem>3</asp:ListItem>
        </asp:DropDownList>
        <hr />
        عدد را انتخاب کنید :
        <asp:DropDownList ID="ddlNumber2" runat="server">
            <asp:ListItem>0</asp:ListItem>
            <asp:ListItem>1</asp:ListItem>
            <asp:ListItem>2</asp:ListItem>
            <asp:ListItem>3</asp:ListItem>
        </asp:DropDownList>
    </div>
    <br />
    <asp:Button ID="btnSum" runat="server" Text="جمع اعداد" 
        onclick="btnSum_Click" /> 
    <asp:Label ID="lblResult" runat="server" Text=""></asp:Label>
    </form>
</body>

قسمت CodeBehind هم به صورت زیر خواهد بود :

کد:
protected void btnSum_Click(object sender, EventArgs e)
        {
            int num1;
            int num2;
            int sum = 0;
            num1 = Convert.ToInt32(ddlNumber1.SelectedValue);
            num2 = Convert.ToInt32(ddlNumber2.SelectedValue);
            sum = (num1*2) + (num2*3);
            lblResult.Text = sum.ToString();

        }

در آخر اگر به نتیجه نرسیدید توضیحات بیشتری قرار دهید تا اگر توانستم به شما کمک کنم.;)
 

bahareh22

عضو جدید
با سلام من یه سوال داشتم من یه پروژه دارم از من خواسته شده http دانشگاهو بنویسم با asp.net یعنی خواسته شده چند تا نرم افزار مخصوص درسای دانشگاهی بزارم بعد چک کنم هر نرم افزار چند چند تا دانلود داشته چه شکلی میشه چک کرد هر نرم افزار چند تا دانلود داشته دستوراتشو نمیدونم لطفا یکی کمکم کنه بعد ببینم اگه نرم افزاری دانلود توسط کاربران نداشته حذف کنم یکی کمکم کنه
 

moradaliyan

عضو جدید
شمارش تعداد دانلود یک فایل

شمارش تعداد دانلود یک فایل

با سلام من یه سوال داشتم من یه پروژه دارم از من خواسته شده http دانشگاهو بنویسم با asp.net یعنی خواسته شده چند تا نرم افزار مخصوص درسای دانشگاهی بزارم بعد چک کنم هر نرم افزار چند چند تا دانلود داشته چه شکلی میشه چک کرد هر نرم افزار چند تا دانلود داشته دستوراتشو نمیدونم لطفا یکی کمکم کنه بعد ببینم اگه نرم افزاری دانلود توسط کاربران نداشته حذف کنم یکی کمکم کنه

سلام و درود بر شما دوست گرامی
به نظر من این کار با روش های مختلفی قابل انجام است در اینجا من این کار را فقط برای راهنمایی شما انجام داده ام شما به کد توجه کنید و با استفاده از علم خود به نتیجه مطلوب برسید.
این کار هم با استفاده از فایل قابل انجام است و هم با استفاده از جدول در دیتا بیس :

یک جدول در دیتا بیس به نام DownloadCounter ایجاد کنید با فیلد های زیر :
DownloadID - نوع int - کلید اصلی - Identity برابر yes .
Link - نوع nvarchar
Count - نوع int .

یک کلاس اکستنشن به پروژه برای دانلود فایل مورد نظر به پروژه اضافه می کنیم و کدهای مورد نظر را به صورت زیر می نویسیم. این کلاس امکان دانلود فایل مورد نظر را برای کاربر فراهم می کند و همچنین تعداد دانلود فایل مورد نظر را داخل جدول مربوط در بانک اطلاعاتی ذخیره می کند.

کد:
public static class HttpExtensions
    {
        public static void ForceDownload(this HttpResponse Response, string virtualPath, string fileName)
        {
            Response.Clear();
            Response.AddHeader("content-disposition", "attachment; filename=" + fileName);
            Response.WriteFile(virtualPath);
            Response.ContentType = "";
            using (ExampleEntities context = new ExampleEntities())
            {
                CounterDownload counter = (from f in context.CounterDownload
                                           where f.Link == fileName
                                           select f).FirstOrDefault();
                if (counter == null)
                {
                    counter = new CounterDownload()
                    {
                        Link = fileName,
                        Count = 1
                    };
                    context.CounterDownload.AddObject(counter);
                }
                else
                {
                    counter.Count += 1;
                }
                context.SaveChanges();
            }
            Response.End();
            }
    }
نکته : کد مربوط به ذخیره اطلاعات را با استفاده از Entity Frame Work و Linq نوشتم.

کد قسمت Markup صفحه :

کد:
<body dir="rtl">
    <form id="form1" runat="server">
    <div>
        <asp:Button ID="btnDownload" runat="server" Text="دانلود" 
            onclick="btnDownload_Click" />
    </div>
    </form>
</body>

در آخر بر روی دکمه دابل کلیک می کنیم و کد زیر را می نویسیم :

کد:
protected void btnDownload_Click(object sender, EventArgs e)
        {
            Response.ForceDownload("~/Cancel.gif", "Cancel.gif");
        }

امیدوارم که به شما کمک کرده باشم مشکل داشتید مطرح کنید اگر بتوانم راهنمایی خواهم کرد.موفق باشید.;)
 

bahareh22

عضو جدید
:cry:مرسي دستتون درد نكنه اما ميشه در مورد كدهاتون بيشتر توضيح بديد اخه من تازه طراحي سايت و ياد گرفتم خيلي وارد نيستم كد هاي كلاس را متوجه نميشم
 

moradaliyan

عضو جدید
شمارش تعداد دانلود یک فایل

شمارش تعداد دانلود یک فایل

:cry:مرسي دستتون درد نكنه اما ميشه در مورد كدهاتون بيشتر توضيح بديد اخه من تازه طراحي سايت و ياد گرفتم خيلي وارد نيستم كد هاي كلاس را متوجه نميشم

با سلام
کلاس HttpResponce تحت فضای نام System.Web کار می کند.که شامل متدها و پراپرتی های لازم در قبال یک پاسخ Http است.
اما داخل کلاس از یک Extention Method استفاده شده است.
Extention Method چیست ؟ اضافه کردن متد به کلاس بدون تغییر در ساختار اصلی و ارث بری از کلاس.
که متد دارای 3 پارامتر ورودی است یک پارامتر HttpRespons و پارامتر دوم مسیر فایل و پارامتر سوم نام فایل.
کد های بدنه هم کاملا واضح است به طور مثال نوشتن یک فایل باینری ، پاک کردن بافر ، اضافه کردن هدر و ...
اما شاید اگر با Linq کار نکرده باشید آشنایی کافی با خطوط :
کد:
using (ExampleEntities context = new ExampleEntities())
            {
                CounterDownload counter = (from f in context.CounterDownload
                                           where f.Link == fileName
                                           select f).FirstOrDefault();
                if (counter == null)
                {
                    counter = new CounterDownload()
                    {
                        Link = fileName,
                        Count = 1
                    };
                    context.CounterDownload.AddObject(counter);
                }
                else
                {
                    counter.Count += 1;
                }
                context.SaveChanges();
            }
نخواهید داشت به جای این کد ها شما یک کوئری جست و جو با روش ADO بنویسید که اگر نام این فایل در جدول وجود نداشت، یک ردیف به جدول اضافه کن یعنی (نام فایل و تعداد که برای اولین بار مقدار آن برابر 1 است) ولی اگر اطلاعات فایل مورد نظر وجود داشت شما باید ردیف مورد نظر را ویرایش کنید یعنی در هر بار کلیک بر روی دکمه دانلود فایل مقدار فیلد Count یک واحد افزایش یابد.
کار سختی نیست. من می خواهم خودتان با مسئله درگیر شوید تا به نتیجه راحت تری برسید کد را هم به این دلیل نوشتم که راه حل برایتان مشخص شود وگرنه فقط به توضیحات اکتفا می کردم.
خوشحال خواهم شد در پیغام بعدی بنویسید که به نتیجه رسیدید و شما را :D اینجوری ببینم.موفق باشید.
 

bahareh22

عضو جدید
با سلام و خسته نباشید واقعا مرسی جواب به سوالام میدین راستش در مورد توضیحاتی که برای ساخت adrotator دادین من همون کاری که گفتین انجام دادم و یک XMLFile1.xml ساختم به صورت زیر
<?xml version="1.0" encoding="utf-8" ?>
<Advertisements>
<Ad>
<imageUrl>back.jpg</imageUrl>
<NavigateUrl>http://www.olomrayaneh.net</NavigateUrl>
<AlternateText>
click here to visit our site

</AlternateText >
<Impressions>
2
</Impressions>
</Ad>
<AD>
<ImageUrl> armnet.gif</ImageUrl>
<NavigateUrl>
http://www.olomrayaneh.net
</NavigateUrl>
<AlternateText>
click here to visit
</AlternateText>
<Impressions>3</Impressions>

</AD>
</Advertisements>
بعد این 2 تا عکس را کپی کردم توی پروژم بعد توی قسمت AdvertisementFile مسیر XMLFile1.xml را انتخاب کردم و اکی کردم سپس بعد یه کنترل XmlDataSource1 توی form قرار دادم ولی متاسفانه تنها چیزی که بهم نشون میده توی قسمت AlternateTextنوشته بودم که وقتی تصویرا نشونم نمیده این جمله را نمایش بده همین جمله ای که الان تو کدام نوشتم ولی هیچ تصویری را نمایش نمیده
 

moradaliyan

عضو جدید
نحوه استفاده از کنترل Adrotator در ASP.NET

نحوه استفاده از کنترل Adrotator در ASP.NET

با سلام و خسته نباشید واقعا مرسی جواب به سوالام میدین راستش در مورد توضیحاتی که برای ساخت adrotator دادین من همون کاری که گفتین انجام دادم و یک XMLFile1.xml ساختم به صورت زیر
<?xml version="1.0" encoding="utf-8" ?>
<Advertisements>
<Ad>
<imageUrl>back.jpg</imageUrl>
<NavigateUrl>http://www.olomrayaneh.net</NavigateUrl>
<AlternateText>
click here to visit our site

</AlternateText >
<Impressions>
2
</Impressions>
</Ad>
<AD>
<ImageUrl> armnet.gif</ImageUrl>
<NavigateUrl>
http://www.olomrayaneh.net
</NavigateUrl>
<AlternateText>
click here to visit
</AlternateText>
<Impressions>3</Impressions>

</AD>
</Advertisements>
بعد این 2 تا عکس را کپی کردم توی پروژم بعد توی قسمت AdvertisementFile مسیر XMLFile1.xml را انتخاب کردم و اکی کردم سپس بعد یه کنترل XmlDataSource1 توی form قرار دادم ولی متاسفانه تنها چیزی که بهم نشون میده توی قسمت AlternateTextنوشته بودم که وقتی تصویرا نشونم نمیده این جمله را نمایش بده همین جمله ای که الان تو کدام نوشتم ولی هیچ تصویری را نمایش نمیده

با سلام و درود بر شما
کدهای بالا را چک کردم هیچ ایرادی نداشت به این صورت آدرس تصویر را بنویسید (back.jpg/~) ، در ادامه مراحل کار را دوباره تمیز تر برای شما انجام می دهم اگر طبق دستور العمل کار را انجام دهید قطعا موفق خواهید شد.

1. یک فولدر به نام images داخل root پروژه ایجاد کنید و داخل آن تصاویر مورد نظر را قرار دهید.
2. یک فایل XML به پروژه اضافه کنید با نام دلخواه و تنظیمات آن را به صورت زیر انجام دهید :

کد:
<?xml version="1.0" encoding="utf-8" ?>
<Advertisements>
    <Ad>
        <ImageUrl>~/images/Company.jpg</ImageUrl>
        <NavigateUrl>http://Example.org</NavigateUrl>
        <AlternateText>شرکت ناکجا</AlternateText>
        <Keyword>شرکت ناکجا</Keyword>
    </Ad>
    <Ad>
        <ImageUrl>~/images/Office.jpg</ImageUrl>

        <AlternateText>شرکت ناکجا</AlternateText>
        <Keyword>شرکت ناکجا</Keyword>
    </Ad>
</Advertisements>

3. حال در Markup یک کنترل AdRotator اضافه کنید و تنظیمات آن را به صورت زیر(دلخواه) انجام دهید :

کد:
<asp:AdRotator ID="AdRotator1" runat="server" Width="476px" Height="314px" AdvertisementFile="~/XMLFile1.xml" />

4. پروژه را اجرا کنید قطعا نتیجه دلخواه شما به دست خواهد آمد.من در یک پروژه به همین شکل از این کنترل استفاده کردم هیچ مشکل خاصی ندارد به زیبایی هر چه تمام به انجام وظیفه خود مشغول است.:biggrin: موفق و سربلند باشید.
 
آخرین ویرایش:

bivafa_1990

عضو جدید
با سلام و دورد بر دوست گرامی
من درخواست شما را با 2 عدد DropDownList و به ساده ترین شکل انجام دادم.روش های دیگری هم وجود دارد.
قسمت Markup صفحه حاوی کنترل ها با تنظیمات اعمال شده به صورت زیر می باشد :
کد:
<body dir="rtl">
    <form id="form1" runat="server">
    <div>
        عدد را انتخاب کنید :
        <asp:DropDownList ID="ddlNumber1" runat="server">
            <asp:ListItem>0</asp:ListItem>
            <asp:ListItem>1</asp:ListItem>
            <asp:ListItem>2</asp:ListItem>
            <asp:ListItem>3</asp:ListItem>
        </asp:DropDownList>
        <hr />
        عدد را انتخاب کنید :
        <asp:DropDownList ID="ddlNumber2" runat="server">
            <asp:ListItem>0</asp:ListItem>
            <asp:ListItem>1</asp:ListItem>
            <asp:ListItem>2</asp:ListItem>
            <asp:ListItem>3</asp:ListItem>
        </asp:DropDownList>
    </div>
    <br />
    <asp:Button ID="btnSum" runat="server" Text="جمع اعداد" 
        onclick="btnSum_Click" /> 
    <asp:Label ID="lblResult" runat="server" Text=""></asp:Label>
    </form>
</body>

قسمت CodeBehind هم به صورت زیر خواهد بود :

کد:
protected void btnSum_Click(object sender, EventArgs e)
        {
            int num1;
            int num2;
            int sum = 0;
            num1 = Convert.ToInt32(ddlNumber1.SelectedValue);
            num2 = Convert.ToInt32(ddlNumber2.SelectedValue);
            sum = (num1*2) + (num2*3);
            lblResult.Text = sum.ToString();

        }

در آخر اگر به نتیجه نرسیدید توضیحات بیشتری قرار دهید تا اگر توانستم به شما کمک کنم.;)


تشکر فراوان از شما دوست عزیز
تا اینجا مشکل من با کمک شما حل شد حالا چیزای دیگه که مونده و اتفاقا مهم هستن اینه که من 2تا Drop Down List دیگه دارم اولی اسم دستگاه ها توش نوشته شده و دومی زمان، مشتری باید مدل دستگاه و زمانو انتخاب کنه بعد اینکه مشتری مدل دستگاه رو انتخاب کرد می خوام مثلا تو drop down اگه اولی انتخاب شد ضرب بشه در یه عدد ثابت اگه دومی انتخاب شد ضرب بشه در یه عدد ثابت تا آخر یکی دیگه از مشکلات من اینه، که خیلی هم کلافه کرد منو :cry:
 

moradaliyan

عضو جدید
تشکر فراوان از شما دوست عزیز
تا اینجا مشکل من با کمک شما حل شد حالا چیزای دیگه که مونده و اتفاقا مهم هستن اینه که من 2تا Drop Down List دیگه دارم اولی اسم دستگاه ها توش نوشته شده و دومی زمان، مشتری باید مدل دستگاه و زمانو انتخاب کنه بعد اینکه مشتری مدل دستگاه رو انتخاب کرد می خوام مثلا تو drop down اگه اولی انتخاب شد ضرب بشه در یه عدد ثابت اگه دومی انتخاب شد ضرب بشه در یه عدد ثابت تا آخر یکی دیگه از مشکلات من اینه، که خیلی هم کلافه کرد منو :cry:

سلام
دوست عزیز هدف شما چیست ؟ یعنی دقیقا می خواهید چه کار کنید.
جواب سوالات زیر را برای من بنویسید :
مشتری اگر مدل دستگاه را انتخاب کرد چرا باید در عدد ثابت ضرب شود؟
آیا مدل را می خواهید در عدد ثابت ضرب کنید یا زمان دستگاه را در عدد ثابت ضرب کنید؟
آیا می خواهید با انتخاب مدل در Dropdown اول ، Dropdown دوم با زمان مربوط به مدل فیلتر شود؟
اصلا نگران نباسید اگر واضح تر بنویسید حتما مشکل حل خواهد شد.
 

bivafa_1990

عضو جدید
سلام
دوست عزیز هدف شما چیست ؟ یعنی دقیقا می خواهید چه کار کنید.
جواب سوالات زیر را برای من بنویسید :
مشتری اگر مدل دستگاه را انتخاب کرد چرا باید در عدد ثابت ضرب شود؟
آیا مدل را می خواهید در عدد ثابت ضرب کنید یا زمان دستگاه را در عدد ثابت ضرب کنید؟
آیا می خواهید با انتخاب مدل در Dropdown اول ، Dropdown دوم با زمان مربوط به مدل فیلتر شود؟
اصلا نگران نباسید اگر واضح تر بنویسید حتما مشکل حل خواهد شد.

من الان مشکلاتم با کمی تغیر درست شد حالا فقط یه مشکل کوچیک مونده اونم اینه که اعدادی که بدست آوردم گذاشتمشون تو Label به صورت اعشاری هستن میخوام اعداد تو Label رند بشن
 

moradaliyan

عضو جدید
تبدیل نوع double به Int

تبدیل نوع double به Int

من الان مشکلاتم با کمی تغیر درست شد حالا فقط یه مشکل کوچیک مونده اونم اینه که اعدادی که بدست آوردم گذاشتمشون تو Label به صورت اعشاری هستن میخوام اعداد تو Label رند بشن

سلام
برای رند کردن اعداد باید از کد های زیر استفاده کنی :
کد:
double value = 3.40;
int result = (int)Math.Ceiling(value);//4
int a =(int)Math.Ceiling(33.38);//34
int b = (int) Math.Round(33.38);//33

یا یک تابع بنویسی که مثلا اعداد با اعشار کم تر از 0.5 را رو به پایین گرد کند و بالای 0.5 را روبه بالا گرد کند و بعد داخل برنامه از آن استفاده کنید.
 
آخرین ویرایش:

bivafa_1990

عضو جدید
سلام
برای رند کردن اعداد باید از کد های زیر استفاده کنی :
کد:
double value = 3.40;
int result = (int)Math.Ceiling(value);//4
int a =(int)Math.Ceiling(33.38);//34
int b = (int) Math.Round(33.38);//33

یا یک تابع بنویسی که مثلا اعداد با اعشار کم تر از 0.5 را رو به پایین گرد کند و بالای 0.5 را روبه بالا گرد کند و بعد داخل برنامه از آن استفاده کنید.

مرسی دوست عزیز، بی نهایت از لطفت ممنونم مشکلم حل شد:D
 

bivafa_1990

عضو جدید
مثل اینکه مشکلات من نمی خواد حل بشه:(
ایندفعه ایجوریه که من تو Drop Down که مقدارامو وارد کردم چند تا از مقادیر من value هاشون یکی هستش بعد که یکی از مقادیر drop Down انتخاب می کنم مثلا آخرین مقدار تو Drop Down بعد که رو Button کلیک می کنم اون مقداری که Value اون با Value اولین مقداری که تو Drop Down هستشو بر می گردونه که من نمی خوام اینطوری بشه
باید چیکار کنم؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟:crying:
 

moradaliyan

عضو جدید
مثل اینکه مشکلات من نمی خواد حل بشه:(
ایندفعه ایجوریه که من تو Drop Down که مقدارامو وارد کردم چند تا از مقادیر من value هاشون یکی هستش بعد که یکی از مقادیر drop Down انتخاب می کنم مثلا آخرین مقدار تو Drop Down بعد که رو Button کلیک می کنم اون مقداری که Value اون با Value اولین مقداری که تو Drop Down هستشو بر می گردونه که من نمی خوام اینطوری بشه
باید چیکار کنم؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟:crying:

سلام
من به درستی متوجه توضیحات شما نشدم لطفا یک مقدار واضح تر بنویسید ولی در هر حال شما یک آیتم بدون Value یعنی فقط Text داشته باشد به عنوان اولین گزینه داخل Dropdownlist اضافه کنید به طور مثال ((لطفا مقدار مورد نظر را انتخاب کنید)) بررسی کنید آیا دوباره با این مشکل مواجه خواهید شد یا نه ؟ اگر مشکل حل نشد خواهشا واضح بنویسید!
 

bivafa_1990

عضو جدید
سلام
من به درستی متوجه توضیحات شما نشدم لطفا یک مقدار واضح تر بنویسید ولی در هر حال شما یک آیتم بدون Value یعنی فقط Text داشته باشد به عنوان اولین گزینه داخل Dropdownlist اضافه کنید به طور مثال ((لطفا مقدار مورد نظر را انتخاب کنید)) بررسی کنید آیا دوباره با این مشکل مواجه خواهید شد یا نه ؟ اگر مشکل حل نشد خواهشا واضح بنویسید!

ببینین من تو Drop Down اسم یه سری دستگاهارو نوشتم بعد مقدار value اونا تعداد باتری هاشون گذاشتم، موقعی که می خوام فرمولمو بنویسم از این valueها استفاده می کنم تا بتونم از این اعداد استفاده کنم تا اینجا که هیچی، مشکل من بعد از این هستش که این دستگاههایی که من تو Drop Down گذاشتم بعضیاشون تعداد باتری هاشون یه اندازه هستش یعنی value من حالا من عددای خودمو وارد میکنم بعد که یه دستگاهی انتخاب میکنم بعد دکمه محاسبه رو میزنم قاعدتا باید اسم اونی که انتخاب کردم تو Drop Down بهم نشون بده ولی این اینکارو نمیکنه اونی بهم نشون میده که value مشابه اونو داره حالا من میخوام اینجوری نشه، اینو باید چیکار کنم؟؟
امیدوارم این دفعه خوب توضیح داده باشم
 

moradaliyan

عضو جدید
مقدار گرفتن از گزینه انتخاب شده در Dropdownlist

مقدار گرفتن از گزینه انتخاب شده در Dropdownlist

ببینین من تو Drop Down اسم یه سری دستگاهارو نوشتم بعد مقدار value اونا تعداد باتری هاشون گذاشتم، موقعی که می خوام فرمولمو بنویسم از این valueها استفاده می کنم تا بتونم از این اعداد استفاده کنم تا اینجا که هیچی، مشکل من بعد از این هستش که این دستگاههایی که من تو Drop Down گذاشتم بعضیاشون تعداد باتری هاشون یه اندازه هستش یعنی value من حالا من عددای خودمو وارد میکنم بعد که یه دستگاهی انتخاب میکنم بعد دکمه محاسبه رو میزنم قاعدتا باید اسم اونی که انتخاب کردم تو Drop Down بهم نشون بده ولی این اینکارو نمیکنه اونی بهم نشون میده که value مشابه اونو داره حالا من میخوام اینجوری نشه، اینو باید چیکار کنم؟؟
امیدوارم این دفعه خوب توضیح داده باشم

سلام
جون جفتمون من نفهمیدم میخواهی چه کار کنی قدیما بهتر می نوشتی ولی اگر شما می خواهی که نام دستگاه را انتخاب کنی بعد تعداد باتری که Value دستگاه مورد نظر می باشد را به دست آوری به صورت زیر خواهد بود :
Markup:
کد:
<asp:DropDownList ID="ddlMachine" runat="server">
            <asp:ListItem Selected="True">لطفا دستگاه مورد نظر را انتخاب کنید</asp:ListItem>
            <asp:ListItem Value="2">دستگاه تراش 4 محور</asp:ListItem>
            <asp:ListItem Value="5">دستگاه برش ورق</asp:ListItem>
            <asp:ListItem Value="2">دستگاه مبدل</asp:ListItem>
            <asp:ListItem Value="5">دستگاه تراش 8 محور</asp:ListItem>
            <asp:ListItem Value="6">دستگاه دروغ سنج</asp:ListItem>
        </asp:DropDownList>
        <br />
        <asp:Button ID="btnResult" runat="server" Text="نتیجه" OnClick="btnResult_Click" />
        <br/>
        <span>گزینه انتخاب شده عبارت است از :</span>
        <asp:Label ID="lblAnswer" runat="server" Text=""></asp:Label>

Code Behind:

کد:
protected void btnResult_Click(object sender, EventArgs e)
        {
            int select;
            select = Convert.ToInt32(ddlMachine.SelectedValue);
            lblAnswer.Text = "نام دستگاه :" + " " + ddlMachine.SelectedItem.Text + "تعداد باتری :"+ " " + select.ToString();
        }

اما در ادامه توصیه من به شما این است که نمونه کد کار را قرار بدهید تا من هدف شما را دریابم.تا اگر توانایی داشتم مشکل شما را حل کنم.همیشه بخند.:biggrin:
 

bivafa_1990

عضو جدید
آقا شرمنده از این که بد توضیح دادم:smile:
مشکلمم با یکمی تغیر حل کردم یعنی مقدار value تغییر دادم به جای تعداد باتری ها به ترتیب 3،2،1... تا آخر گذاشتم بعد براش شرط گذاشتم که اگه اولین مقدار انتخاب شد بیا این کارو انجام بده، (تعداد باتریهاشو گذاشتم تو یه متغیر بعد ازش استفاده کردم.)
 

moradaliyan

عضو جدید
ساخت Tab در ASP.NET

ساخت Tab در ASP.NET

دوستان کسی میدونه چجوری میشه تو tab page, asp ساخت؟؟؟؟

با سلام

برای انجام این کار روش های زیر پیشنهاد می شود :
1. اگر JavaScript یا Jquery را بلد باشید به راحتی می توانید این کار را انجام دهید.
2. از کامپوننت های Telerik و کنترل TabStrip استفاده کنید.
3. کم هزینه ترین راه جست و جو در اینترنت.

موفق باشی دوست گرامی;)
 

bivafa_1990

عضو جدید
با سلام

برای انجام این کار روش های زیر پیشنهاد می شود :
1. اگر JavaScript یا Jquery را بلد باشید به راحتی می توانید این کار را انجام دهید.
2. از کامپوننت های Telerik و کنترل TabStrip استفاده کنید.
3. کم هزینه ترین راه جست و جو در اینترنت.

موفق باشی دوست گرامی;)


متاسفانه java بلد نیستم:(
telerik حجمش یکم زیاده منم نمیتونم دانلود کنم
یه دونه ajaxToolkit دانلود کردم زیاد ازش سر در نیاوردم همشم یه گیری میده کلا اعصاب خرد کنه
دوستان یه توصیه چیزی ندارین بکنین؟؟؟؟؟؟؟؟:crying:
 

farzan32

عضو جدید
مشاهده اطلاعات فردی،پس از وارد کردن یوزر نیم و پسورد

مشاهده اطلاعات فردی،پس از وارد کردن یوزر نیم و پسورد

سلام و عرض ادب
من یک صفحه کاربری دارم که کاربر یوزرنیم و پسوردش را وارد میکند.
چطور میشه که بعد از اینکه کاربر روی دکمه اوکی کلیک کرد،آی دی همان کاربر به خروجی رفته و تمام اطلاعات مربوط به کاربر که قبلاً در صفحه ثبت نام وارد کرده بوده و در دیتابیس ذخیره شده بوده،نمایش داده شود؟
توضیح بیشتر :
اول توی یک صفحه کل اطلاعات یک کاربر ذخیره میشه.یوزرنیم و پسورد کاربر هم در همین صفحه مشخص میشه(در واقع این صفحه رو مدیر سایت پر میکنه و یوزر و پسورد رو به کاربر میده)
بعد کاربر موقع مشاهده اطلاعات مربوط به خودش (در صفحه‌ی دیگه) یوزر و پسورد خودشو که از مدیر سایت دریافت کرده،میزنه و اطلاعاتشو میبینه

ممنون میشم راهنمائیم کنید
 

moradaliyan

عضو جدید
واکشی اطلاعات کاربر با استفاده از یوزرنیم و پسورد

واکشی اطلاعات کاربر با استفاده از یوزرنیم و پسورد

سلام و عرض ادب
من یک صفحه کاربری دارم که کاربر یوزرنیم و پسوردش را وارد میکند.
چطور میشه که بعد از اینکه کاربر روی دکمه اوکی کلیک کرد،آی دی همان کاربر به خروجی رفته و تمام اطلاعات مربوط به کاربر که قبلاً در صفحه ثبت نام وارد کرده بوده و در دیتابیس ذخیره شده بوده،نمایش داده شود؟
توضیح بیشتر :
اول توی یک صفحه کل اطلاعات یک کاربر ذخیره میشه.یوزرنیم و پسورد کاربر هم در همین صفحه مشخص میشه(در واقع این صفحه رو مدیر سایت پر میکنه و یوزر و پسورد رو به کاربر میده)
بعد کاربر موقع مشاهده اطلاعات مربوط به خودش (در صفحه‌ی دیگه) یوزر و پسورد خودشو که از مدیر سایت دریافت کرده،میزنه و اطلاعاتشو میبینه

ممنون میشم راهنمائیم کنید

سلام و درود بر شما
نکته : برای کار با بانک اطلاعاتی از Entity Frame work و برای نوشتن کوئری از Linq استفاده شده است.
یک صفحه جدید ایجاد کنید کنترل های مربوط را به صورت زیر در صفحه قرار دهید :
بخش Markup صفحه :
کد:
<body dir="rtl">
    <form id="form1" runat="server">
    <div>
        <label>
            نام کاربری :</label> <asp:TextBox ID="txtUseName" runat="server"></asp:TextBox>
        <br />
        <label>
            کلمه عبور :</label> <asp:TextBox ID="txtPassword" runat="server"></asp:TextBox>
        <br />
        <asp:Button ID="btnSearch" runat="server" Text="مشاهده اطلاعات" 
            onclick="btnSearch_Click" />
        <hr />
        <span>اطلاعات شما:</span>
        <br/>
        <label>نام و نام خانوادگی :</label> <asp:Label ID="lblData" runat="server" Text=""></asp:Label>
    </div>
    </form>
</body>
بر روی دکمه دابل کلیک و کد های زیر را بنویسید :
بخش Code Behind :
کد:
public partial class SearchData : System.Web.UI.Page
    {
        ExampleEntities context = new ExampleEntities();
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void btnSearch_Click(object sender, EventArgs e)
        {
            lblData.Text = string.Empty;
            int userid = (from u in context.User
                          where u.UserName == txtUseName.Text
                          select u.UserID
                         ).FirstOrDefault();
            var pass = (from u in context.User
                        where u.Password == txtPassword.Text && u.UserName == txtUseName.Text && u.UserID == userid
                        select u.Password).FirstOrDefault();
            if (pass != null)
            {

                var result = (from u in context.User
                              where u.UserID == userid
                              select u).FirstOrDefault();
                lblData.Text = result.FirstName + " " + result.LastName;
            }

        }
    }

توضیحات :
روند انجام کار به این صورت خواهد بود که :
1. شما با استفاده از نام کاربری که توسط کاربر وارد می شود UserID مورد نظر را بدست آورید.(نام کاربری ها باید منحصر بفرد باشند).
2. کلمه عبور را کاربر مورد نظر را با استفاده از UserID یا UserName بدست آورید.
3. اطلاعات را به شکل دلخواه به کاربر نمایش دهید.
موفق و پاینده باشید.;)
 

bivafa_1990

عضو جدید
گرفتن مقدار از بانک اطلاعاتی

گرفتن مقدار از بانک اطلاعاتی

سلام دوستان
من یه table دارم به اسم username که از user , pass , name تشکیل شده من میخوام وقتی کاربر تو صفحه login یوزر و پسورد خودشو وارد کرد و رفت تو صفحه اصلی بالای صفحه اسمی که برای کاربر تو table دارم تو labe بهم نشون بده (چیزی که تو name دارم نه user کاربر چون اگه user باشه کاری نداره چون میتونم مقداری که کاربر تو text برای user وارد میکنه بگیرم و تو label صفحه بعد نشون بدم)
ممنون میشم اگه کمکم کنین
 

moradaliyan

عضو جدید
نمایش نام کاربر برای خوش آمد گویی

نمایش نام کاربر برای خوش آمد گویی

سلام دوستان
من یه table دارم به اسم username که از user , pass , name تشکیل شده من میخوام وقتی کاربر تو صفحه login یوزر و پسورد خودشو وارد کرد و رفت تو صفحه اصلی بالای صفحه اسمی که برای کاربر تو table دارم تو labe بهم نشون بده (چیزی که تو name دارم نه user کاربر چون اگه user باشه کاری نداره چون میتونم مقداری که کاربر تو text برای user وارد میکنه بگیرم و تو label صفحه بعد نشون بدم)
ممنون میشم اگه کمکم کنین

با عرض سلام خدمت بی وفای عزیز
1. یک مدل از DataBase داخل پروژه بسازید.
2. بستر ارتباط با بانک اطلاعاتی را برقرار کنید.
کد:
ExampleEntities db = new ExampleEntities();
3. یک متد بنویسید و بوسیله ی نام کاربری اطلاعات کاربر مورد نظر را بدست آورید.نام کاربری ها باید منحصر بفرد باشند.یعنی تکراری نباشند.
کد:
protected void search()
        {
            var user = (from r in db.User
                where r.UserName == txtUserName.Text
                select r).FirstOrDefault();
            lblUser.Text += string.Format("کاربر گرامی: {0}",user.FirstName +" " + "خوش آمدید");     
        }
4. کد بالا را فقط برای راهنمایی شما نوشتم وگرنه راه اصولی تر روش دیگری است.یعنی باید شما یک کلاس Role Provider داشته باشید و سپس داخل رویداد PageLoad ، صفحه MasterPage به صورت زیر کد بنویسید :
کد:
protected void Page_Load(object sender, EventArgs e)
        {
            if (HttpContext.Current.User.Identity.IsAuthenticated)
            {
                string username = User.Identity.Name;
                int userid = (from u in db.User
                    where u.UserName == username
                    select u.UserID).FirstOrDefault();
                var user = (from r in db.User
                            where r.UserID == userid
                            select r).FirstOrDefault();
                lblUser.Text += string.Format("کاربر گرامی: {0}", user.FirstName + " " + "خوش آمدید");
            }
        }
5. به هر حال نتیجه گیری با شماست متد نوشته شده را فراخوانی کنید.
کد:
protected void btnLogin_Click(object sender, EventArgs e)
        {
            search();
        }
6. اگر Entity Frame Work و Linq نمی دانید کد های بالا را با ADO بنویسید.
موفق و پایدار باشید.;)
 

bivafa_1990

عضو جدید
مرسی دوست عزیز
من برای login کردن این کدهارو نوشتم تا اینجا که مشکلی نداره یعنی من وقتی user و pass خودمو میزنم میره صفحه بعد تو صفحه بعد تو label بالای صفحه اسمی که من واسه username دادم میده ولی من میخوام اسم شخص که تو table دارمو بهم بده
اینم کدم حالا من باید کجای این کدمو تغییر بدم؟؟؟؟؟

کد:
SqlConnection cn = new SqlConnection();
   
         cn.ConnectionString = "Data Source=..........";
     
       cn.Open();
     
       SqlCommand command1 = new SqlCommand();
     
       command1.Connection = cn;
        
    command1.CommandText = "select UserName,Pass,Name from my_tblUser where UserName=@a And Pass=@b";
    
        command1.Parameters.AddWithValue("@a", txtusername.Text);
     
       command1.Parameters.AddWithValue("@b", txtpassword.Text);
  
          SqlDataAdapter sd = new SqlDataAdapter(command1);
     
       DataTable dt = new DataTable();
     
       sd.Fill(dt);
   
         if (dt.Rows.Count == 1)
    
        {
                
 
            
                Session["Username"] = txtusername.Text;
       
         Response.Redirect("Main.aspx");   
    
        }
            else
      
      {
                Label1.Text = " نام کاربری یا کلمه عبور اشتباه است! ";
               
 Label1.Visible = true;
            }
    
        cn.Close();
        }

تو صفحه main تو قسمت pageload این کد نوشتم:

کد:
 Label1.Text = Session["Username"].ToString();
 

moradaliyan

عضو جدید
نمایش نام کاربر برای خوش آمد گویی

نمایش نام کاربر برای خوش آمد گویی

مرسی دوست عزیز
من برای login کردن این کدهارو نوشتم تا اینجا که مشکلی نداره یعنی من وقتی user و pass خودمو میزنم میره صفحه بعد تو صفحه بعد تو label بالای صفحه اسمی که من واسه username دادم میده ولی من میخوام اسم شخص که تو table دارمو بهم بده
اینم کدم حالا من باید کجای این کدمو تغییر بدم؟؟؟؟؟

کد:
SqlConnection cn = new SqlConnection();
   
         cn.ConnectionString = "Data Source=..........";
     
       cn.Open();
     
       SqlCommand command1 = new SqlCommand();
     
       command1.Connection = cn;
        
    command1.CommandText = "select UserName,Pass,Name from my_tblUser where UserName=@a And Pass=@b";
    
        command1.Parameters.AddWithValue("@a", txtusername.Text);
     
       command1.Parameters.AddWithValue("@b", txtpassword.Text);
  
          SqlDataAdapter sd = new SqlDataAdapter(command1);
     
       DataTable dt = new DataTable();
     
       sd.Fill(dt);
   
         if (dt.Rows.Count == 1)
    
        {
                
 
            
                Session["Username"] = txtusername.Text;
       
         Response.Redirect("Main.aspx");   
    
        }
            else
      
      {
                Label1.Text = " نام کاربری یا کلمه عبور اشتباه است! ";
               
 Label1.Visible = true;
            }
    
        cn.Close();
        }

تو صفحه main تو قسمت pageload این کد نوشتم:

کد:
 Label1.Text = Session["Username"].ToString();

سلام
تذکر : سعی کنید کوئری نوشتن با Linq را یاد بگیرید.
کد ها را به صورت زیر تغییر بدهید :
کد:
SqlConnection cn = new SqlConnection();
            cn.ConnectionString = "Data Source=..........";
            cn.Open();
            SqlCommand command1 = new SqlCommand();
            command1.Connection = cn;
            command1.CommandText = "select UserName,Pass,Name from my_tblUser where UserName=@a And Pass=@b";
            command1.Parameters.AddWithValue("@a", txtusername.Text);
            command1.Parameters.AddWithValue("@b", txtpassword.Text);
            DataSet dsUsers = new DataSet();
            SqlDataAdapter sd = new SqlDataAdapter(command1);
            sd.Fill(dsUsers, "my_tblUser");
            if (dsUsers.Tables["my_tblUser"].Rows.Count != 0)
            {
                foreach (DataRow drUser in dsUsers.Tables["my_tblUser"].Rows)
                {
                    Session["Username"] = drUser["Name"];
                }
                Response.Redirect("Main.aspx");
            }
            else
            {
                Label1.Text = " نام کاربری یا کلمه عبور اشتباه است! ";
                Label1.Visible = true;
            }
            cn.Close();
موفق و موید باشید.;)
 

rezashirazim

عضو جدید
سلام دوستان
من یه table دارم به اسم username که از user , pass , name تشکیل شده من میخوام وقتی کاربر تو صفحه login یوزر و پسورد خودشو وارد کرد و رفت تو صفحه اصلی بالای صفحه اسمی که برای کاربر تو table دارم تو labe بهم نشون بده (چیزی که تو name دارم نه user کاربر چون اگه user باشه کاری نداره چون میتونم مقداری که کاربر تو text برای user وارد میکنه بگیرم و تو label صفحه بعد نشون بدم)
ممنون میشم اگه کمکم کنین

چرا از aspnet_membership استفاده نمیکنید؟! خیلی راحت هست و از نظر سرعت و امنیت هم خیلی بهتر از حالتی هست که آدم خودش برنامه بنویسه و از session استفاده کنه.
 

bivafa_1990

عضو جدید
Grid View

Grid View

سلام دوستان
دوباره من با یه سوال دیگه اومدم:D
من تو فرمم یه gridview دارم که یه سری اطلاعات توش دارم یعنی از بانک اطلاعاتیم میخونه بهم نشون میده حالا من یه دکمه (از طریق gridview tasks و بعد edit coloumns رو زدم بعد تو gridview اضافه کردم) میخوام وقتی رو دکمه کلیک کردم اطلاعات همون سطرو تو یه فرم دیگه مثلا تو textbox بهم نشون بده
باید کد خاصی بنویسم یا کار دیگه باید انجام بدم؟؟
ممنون میشم راهنماییم کنین :smile:
 

Similar threads

بالا