مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

source

عضویت از 1395/11/13

مشکل خواندن رشته های ثابت ذخیره شده در Model

  • یکشنبه 11 آذر 1397
  • 02:33
تشکر میکنم

سلام

یه کلاس دارم به شکل زیر:

    public class Save_Word_And_Icon
    {
        public string ppp = "1111";
        public string ttt = "2";
    


    }

به صورت یک لیست تعریفش کردم و پاسش دادم تووی View .

این رو هم بگم: در حال حاضر از مدل چند لیستی تووی ویو استفاده کردم و این لیست هم جزو همون لیستاس.

چطوری میتونم تووی ویو ازش استفاده کنم؟

پاسخ های این پرسش

تعداد پاسخ ها : 6 پاسخ
کاربر سایت

سهیل علیزاده

عضویت از 1396/04/09

  • یکشنبه 11 آذر 1397
  • 08:01

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

کاربر سایت

source

عضویت از 1395/11/13

  • یکشنبه 11 آذر 1397
  • 11:28

- ببین یه مدل دارم.

- تووش یه کلاس درست کردم.

- کلاسه یه سری رشته داره که هر کدوم مقدار ثابت دارن.

- میخوام تووی یه ویو از این کلاس استفاده کنم.

1- مدلش از چه نوعی هست؟ ienumerable هست یا ساده.

2- چطوری از داده های کلاس استفاده کنم؟ 

نکته:

- خودم به صورت لیست پاسش دادم تووی ویو. ولی موقع استفاده از foreach پیغام null میبینم.  در صورتی که مقادیر ثابت کلاس تووی مدل تعریف کردم.

- در حال حاضر دارم از یه مدل  غیر IEnumerable استفاده میکنم تووی ویو. اگر قرار هست که Ienumerable باشه بایستی چکار کنم برای اون یکی مدل!

کاربر سایت

سهیل علیزاده

عضویت از 1396/04/09

  • یکشنبه 11 آذر 1397
  • 11:44

لطفا model , view , action مورد نظر رو قرار بدید.

کاربر سایت

source

عضویت از 1395/11/13

  • یکشنبه 11 آذر 1397
  • 12:22

این خلاصه قسمتی از Model :

    public class CopyRight
    {
        public string Pnumber { get; set; }
    }


    public class Save_Word
    {
        /*کلمات*/
        public string BasketBuy = "سبد خرید";
    }



    public class CustomModel
    {
        public List<CopyRight> CopyRight { get; set; }
        public List<Save_Word> Save_Word { get; set; }

    }

این هم خلاصه اکشنم هست:

        [HttpGet]
        public ActionResult Index()
        {
            List<CopyRight> CopyRight_list = new List<CopyRight>();
            while (CopyRight_rdr.Read())
            {
                CopyRight_list.Add(new CopyRight
                {
                    Pnumber = (string)CopyRight_rdr.GetValue(CopyRight_rdr.GetOrdinal("Pnumber")),
                });
            }


            List<Save_Word> Save_Word_list = new List<Save_Word>();



            return View(new CustomModel {
                CopyRight = CopyRight_list,
                Save_Word = Save_Word_list
            });
        }

اینم مدلی هست که تووی View فراخوانی کردم:

@model pppp.Areas.SharedModel.Models.CustomModel

از Foreach هم برای استفاده هر دو کلاس استفاده کردم.

برای کلاس copyright که از دیتابیس میاد مشکلی ندارم

اما برای save_word که مقادیر ثابت داره به مشکل خوردم. از foreach که استفاده میکنم error میده که لیست شما خالی است.

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

کاربر سایت

سهیل علیزاده

عضویت از 1396/04/09

  • یکشنبه 11 آذر 1397
  • 17:14

وقتی لیست شما خالی باشه و هیچ item درونش اضافه نشده باشه شما نمیتونید به مقادیر ثابتی که تعریف کردید دسترسی پیدا کنید. کار شما صحیح نیست و برای استفاده از مقادیر ثابت باید یک کلاس استاتیک جداگانه بسازید و مقادیر ثاب را درون آن قرار بدید و هر زمان که به آن نیاز داشتید به صورت مستقیم از آن استفاده کنید. این نوع کلاس های در اکثر فریم ورک ها دیده میشه و اسم اون ها با constants تمام میشه.

کاربر سایت

source

عضویت از 1395/11/13

  • یکشنبه 11 آذر 1397
  • 18:08

ممنونم

smileyyes

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)