System.String' türündeki nesne '....' türüne atılamadı.

0

Merhabalar ,

üye menü kısıtlama ile ilgili yazdığım kodum da System.String' türündeki nesne 'Tbl_Editor' türüne atılamadı hatası almaktayım.

Veri tabanımda Yetki diye bir alanım var , eğer Yetki alanında kontrol ettiğim yetki yok ise göstermeyecek

Html ;

<% if (myClass.YetkiKontrol("DUYURU_IZLE"))
                  { %>
                <li>
                    <a href="#"><i class="fa fa-lg fa-fw fa-bullhorn"></i><span class="menu-item-parent">Duyurular</span></a>
                    <ul>
                        <li>
                            <a href="#">Duyuru Listesi</a>
                        </li>
                    </ul>
                </li>
                <% }%>

Kod ;

public static bool YetkiKontrol(string Yetki)
    {
        bool yetkili = false;

        Tbl_Editor ed = (Tbl_Editor)HttpContext.Current.Session["AdSoyad"];
        if (ed != null)
        {
            string edYetkiler = ed.Yetki;

            if (edYetkiler == "admin") yetkili = true;
            else if (edYetkiler.Contains("ADMIN_YETKISI")) yetkili = true;
            else
            {
                if (Yetki.Contains(","))
                {
                    string[] yetkiler1 = Yetki.Split(',');
                    foreach (var item in yetkiler1)
                    {
                        if (edYetkiler.Contains(item))
                        {
                            yetkili = true; break;
                        }
                    }
                }
                else
                {
                    if (edYetkiler.Contains(Yetki))
                        yetkili = true;
                }
           }
       }

        return yetkili;
    }

Bahsettiğim hatayı Tbl_Editor ed = (Tbl_Editor)HttpContext.Current.Session["AdSoyad"]; burada alıyorum.

Teşekkür ederim.

hsnn06 hsnn06 (8)
6 yıl önce sordu

    Toplam 1 Cevap


    0

    (Tbl_Editor)HttpContext.Current.Session["AdSoyad"]

    Bu satırda Session içindeki AdSoyad "uzmanim net" gibi bir string ifade olmalı. Ama sen session içinde sakladığın türün Tbl_editor olduğunu bildirmişsin. Burada bir hatan var. Session içinde ya gerçekten Tbl_Editor türünde veri saklayacaksın ya da session içinden aldığın string veriyi Tbl_Editor türüne çevirmelisin.

    alattin alattin (17060)
    6 yıl önce cevaplandı

    • @alattin hocam string veriyi Tbl_Editor e nasıl çevirebilirim hsnn06 6 yıl önce
    • Tbl_Editor nesnesi tam olarak nedir? Muhtemelen db üzerindeki bir tabloyu temsil ediyor. Bunu doğrudan yapamazsın, aslında yapmak istediğin şeyin mantığında bir hata var gibi @hsnn06 alattin 6 yıl önce
    • evet hocam Tbl_Editor veritabanın daki tablonun ismi aslında yapmak istediğim session dan bu tabloya doldurup Yetki alanını kontrol etmek istiyorum @alattin hsnn06 6 yıl önce
    • @hsnn06 Tbl_Editor doğrudan sessiona at o zaman. Sadece ad soyad olmasın. alattin 6 yıl önce
    üyelik gerektirir

    Cevap yazabilmek için üye girişi yapmalısınız.

    Eğer uzmanim.net üyesiyseniz giriş yapabilirsiniz: üye girişi yap
    uzmanim.net'e üye olmak çok kolaydır: hemen kayıt ol