folder Tahribat.com Forumları
linefolder C#, Asp.Net, .Net Core
linefolder Değişken İçerisinde Bir Başka Değişkenin Değerinin Gelmesini Nasıl Yapabilirim?



Değişken İçerisinde Bir Başka Değişkenin Değerinin Gelmesini Nasıl Yapabilirim?

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    camarade
    ontedi
    ontedi's avatar
    Kayıt Tarihi: 04/Eylül/2005
    Erkek

    Şimdi şöyle bir değerler kümem mevcut.

    string strDil_Kod_Tr = "tr";
    string strDil_Kod_En = "en";
    string strDil_Kod_Ru = "ru";
    string strDil_Kod_Fr = "fr";

    diye değişkenlerim mevcut. Aslında dillere ait onun kısa kodu. Bir de şu şekilde değişkenlerim var

    string strUyari_Tr = $"{dilSettings.lutfen_ad_soyad_giriniz_tr}";
    string strUyari_En = $"{dilSettings.lutfen_ad_soyad_giriniz_en}";
    string strUyari_Ru = $"{dilSettings.lutfen_ad_soyad_giriniz_ru}";
    string strUyari_Fr = $"{dilSettings.lutfen_ad_soyad_giriniz_fr}";

    gibi bir yerlerden aldığım sabitler var, dil koduna göre değişkenlerin değeri değişiyor.

    Yapmak istediğim şu, tek tek strUyari_Tr, strUyari_En... yazmak yerine



    string strUyari = $"{dilSettings.lutfen_ad_soyad_giriniz_BURAYA_DIL_KOD_DEGERININ_GELMESI}";

    Yani

    şöyle bir şey olması

    tring strUyari = $"{dilSettings.lutfen_ad_soyad_giriniz_|strDil_Kod_Tr|}";  gibi tanımlı değişkenlerimi içerisine tanımlayıp değerini oraya yazdırmak. Açıkcası yol yordam vs.. merak ettim.

     


    Matematikçi ve Yazılımcı. http://www.ontedi.com ve http://www.cizgi.site Siteme beklerim herkesi.
  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Hermes
    abdullahazad
    abdullahazad's avatar
    Kayıt Tarihi: 21/Mayıs/2007
    Erkek

    mesela php de söyle yapıyoruz.

     

    $strUyari = "{dilSettings.lutfen_ad_soyad_giriniz_" . $strDil_Kod_Tr . "}"; 

     

     

    bu da c#

    string strUyari = $"{dilSettings.lutfen_ad_soyad_giriniz_" + strDil_Kod_Tr + "}"; 



     

     

    https://learn.microsoft.com/en-us/dotnet/csharp/how-to/concatenate-multiple-strings

     

     

    abdullahazad tarafından 14/Ağu/23 22:07 tarihinde düzenlenmiştir

    az insan çok huzur.
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    yolbulucu
    yolbulucu's avatar
    Kayıt Tarihi: 06/Nisan/2007
    Homo

    dilSettings['lutfen_ad_soyad_giriniz_tr']

    diger dillerin genelinde bu şekil oluyo

     


    29.99cm, titanyum kaplamalı, çift damarlı, su ve yağ soğutmalı.
  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    camarade
    ontedi
    ontedi's avatar
    Kayıt Tarihi: 04/Eylül/2005
    Erkek

    Apocan sağolasın, biraz ben anlatamadım.

    Bir yerlerde benim şöyle bir değişkenim var
    dilSettings.lutfen_ad_soyad_giriniz_tr = "Lütfen ad soyad giriniz.";

    Olaya gelirsek

    string strUyari1 = $"dilSettings.lutfen_ad_soyad_giriniz_" + strDil_Kod_Tr;

    bunun sonucu

    strUyari1 = "dilSettings.lutfen_ad_soyad_giriniz_tr";

    şeklinde oluyor. Şimdi bunun sonucunda ise içerisinde oluşan değer aslında bir değişken. Ben o değişkenin değerinin gelmesini istiyorum.

    en sonunda

    strUyari1 ram üzerinde "Lütfen ad soyad giriniz." şeklnde olmalı. Bilmem anlatabildim mi?


    Matematikçi ve Yazılımcı. http://www.ontedi.com ve http://www.cizgi.site Siteme beklerim herkesi.
  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Antikky
    Antikky's avatar
    Üstün Hizmet Madalyası Üstün Hizmet Madalyası
    Kayıt Tarihi: 01/Mayıs/2003
    Erkek

    string strDil_Kod_Tr = "tr";
    string strDil_Kod_En = "en";
    string strDil_Kod_Ru = "ru";
    string strDil_Kod_Fr = "fr";

    string strUyari_Tr = $"{strDil_Kod_Tr}";
    string strUyari_En = $"{strDil_Kod_En}";
    string strUyari_Ru = $"{strDil_Kod_Ru}";
    string strUyari_Fr = $"{strDil_Kod_Fr}";

    string dilSettings_lutfen_ad_soyad_giriniz_tr = "Lütfen ad ve soyadınızı giriniz.";
    string dilSettings_lutfen_ad_soyad_giriniz_en = "Please enter your first and last name.";
    string dilSettings_lutfen_ad_soyad_giriniz_ru = "Пожалуйста, введите ваше имя и фамилию.";
    string dilSettings_lutfen_ad_soyad_giriniz_fr = "Veuillez entrer votre nom et prénom.";

    string strUyari = string.Format(dilSettings_lutfen_ad_soyad_giriniz_tr, strDil_Kod_Tr);

    Console.WriteLine(strUyari);

     


    Umursamaz Tavrımın Hastası Olunuz.
  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    camarade
    ontedi
    ontedi's avatar
    Kayıt Tarihi: 04/Eylül/2005
    Erkek

    Bi ek daha yapayım.

    string dilSettings_lutfen_ad_soyad_giriniz = "";

    string strUyari = nameof(dilSettings_lutfen_ad_soyad_giriniz) + "_" + strDil_Kod_Ru;

     

    strUyari değeri bu oldu. Şimdi ise bu çıkan değerin (aslında bi değişkeni elde etmiş oldum) karşılığı olan değeri almam gerekli. Yani "Пожалуйста, введите ваше имя и фамилию." şeklinde. Biraz zor oldu ama anlatabilmişimdir umarım.


    Matematikçi ve Yazılımcı. http://www.ontedi.com ve http://www.cizgi.site Siteme beklerim herkesi.
  7. KısayolKısayol reportŞikayet pmÖzel Mesaj
    ucenmi
    ucenmi's avatar
    Kayıt Tarihi: 25/Mayıs/2011
    Erkek

    Dostum hiçbir programala dilinde çeviri işleri bu şekilde farklı değikenlere atanarak yapılmaz. Normalde çeviri için kütüphane ve dil dosyaları kullanırsın ama en basitinden sen manuel olarak yapmak istiyorsan array kullanmalısın. Her dilde ayı array key kullanılıp degeri okunur.

    Mantık şu şekilde olur (php için) 

    ceviriler

    $ceviriler = [
                'en' => [
                    'merhaba_dunya' => 'Hello Wolrd',
                    'selam' => 'Hi'
                ],
                'tr' => [
                    'merhaba_dunya' => 'Merhaba Dünya',
                    'selam' => 'Selam'
                ],
            ];
            
            $istenilenDil = 'en';
            
            echo $ceviriler[$istenilenDil]['merhaba_dunya'];
            echo $ceviriler[$istenilenDil]['selam'];



     

     

    ucenmi tarafından 15/Ağu/23 00:20 tarihinde düzenlenmiştir
  8. KısayolKısayol reportŞikayet pmÖzel Mesaj
    cybermole
    cybermole's avatar
    Kayıt Tarihi: 29/Mart/2016
    Erkek
    using System;
    using System.Collections.Generic;
    
    class Program
    {
        static void Main(string[] args)
        {
            Dictionary<string, string> dilUyarilari = new Dictionary<string, string>
            {
                { "tr", "lutfen_ad_soyad_giriniz_tr" },
                { "en", "lutfen_ad_soyad_giriniz_en" },
                { "ru", "lutfen_ad_soyad_giriniz_ru" },
                { "fr", "lutfen_ad_soyad_giriniz_fr" }
            };
    
            string secilenDil = "tr"; // Örneğin seçilen dil kodu
    
            if (dilUyarilari.ContainsKey(secilenDil))
            {
                string uyariAnahtar = dilUyarilari[secilenDil];
                string strUyari = $"{dilSettings.{uyariAnahtar}}";
                Console.WriteLine(strUyari);
            }
            else
            {
                Console.WriteLine("Bu dil kodu için bir uyarı metni bulunamadı.");
            }
        }
    }

     

    yapay amca veriyor ama istediğin mi bilmiorum illa sormussundur ama :)

    using System;
    using System.Collections.Generic;
    
    class DilSettings
    {
        public string lutfen_ad_soyad_giriniz_tr { get; set; }
        public string lutfen_ad_soyad_giriniz_en { get; set; }
        public string lutfen_ad_soyad_giriniz_ru { get; set; }
        public string lutfen_ad_soyad_giriniz_fr { get; set; }
    }
    
    class Program
    {
        static string GetValueFromDilSettings(DilSettings settings, string dilKod, string anahtar)
        {
            string propertyName = anahtar + "_" + dilKod;
            var property = settings.GetType().GetProperty(propertyName);
            if (property != null)
            {
                return (string)property.GetValue(settings);
            }
            return "Belirtilen dil ve anahtar için bir değer bulunamadı.";
        }
    
        static void Main(string[] args)
        {
            DilSettings dilSettings = new DilSettings();
            dilSettings.lutfen_ad_soyad_giriniz_tr = "Lütfen ad ve soyadınızı giriniz.";
            dilSettings.lutfen_ad_soyad_giriniz_en = "Please enter your full name.";
            dilSettings.lutfen_ad_soyad_giriniz_ru = "Пожалуйста, введите ваше имя и фамилию.";
            dilSettings.lutfen_ad_soyad_giriniz_fr = "Veuillez entrer votre nom complet.";
    
            string strDil_Kod_Ru = "ru";
            string anahtar = "dilSettings_lutfen_ad_soyad_giriniz";
    
            string strUyari = GetValueFromDilSettings(dilSettings, strDil_Kod_Ru, anahtar);
            Console.WriteLine(strUyari);
        }
    }
    



    cybermole tarafından 15/Ağu/23 00:25 tarihinde düzenlenmiştir
  9. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Hannibal_King
    Hannibal_King's avatar
    Kayıt Tarihi: 22/Ağustos/2010
    Erkek

    C#'ta Dictionary kullanabilirsin. Anahtar ve değer çiftlerine ihtiyacına göre türleri verirsin. 

Toplam Hit: 1059 Toplam Mesaj: 9
c# değişken içinde değişken değerinin gelmesi