Rumah > pembangunan bahagian belakang > C++ > Bagaimana saya boleh mendapatkan nama pembolehubah atau parameter C#?

Bagaimana saya boleh mendapatkan nama pembolehubah atau parameter C#?

Barbara Streisand
Lepaskan: 2025-01-27 04:01:09
asal
567 orang telah melayarinya

How Can I Get the Name of a C# Variable or Parameter?

Dapatkan pembolehubah dan nama parameter dalam C#

Dalam C#, mengakses nama pembolehubah atau parameter adalah penting untuk pelbagai senario, seperti pengendalian ralat dan penjanaan kod dinamik. Mari terokai cara untuk mencapai ini:

Penyelesaian sebelum C# 6.0:

Sebelum C# 6.0, penyelesaian untuk mendapatkan nama ahli adalah dengan menggunakan refleksi. Pertimbangkan kelas berikut, yang menyediakan kaedah generik untuk mendapatkan semula nama ahli:

<code class="language-csharp">public static class MemberInfoGetting
{
    public static string GetMemberName<T>(Expression<Func<T>> memberExpression)
    {
        MemberExpression expressionBody = (MemberExpression)memberExpression.Body;
        return expressionBody.Member.Name;
    }
}</code>
Salin selepas log masuk

Untuk menggunakan kaedah ini, anda menghantar ungkapan lambda yang merujuk pembolehubah atau parameter:

<code class="language-csharp">string testVariable = "value";
string nameOfTestVariable = MemberInfoGetting.GetMemberName(() => testVariable);</code>
Salin selepas log masuk

C# 6.0 dan penyelesaian yang lebih tinggi:

Dalam C# 6.0 dan lebih baru, pengendali nameof menyediakan cara yang lebih bersih dan cekap untuk mendapatkan nama ahli:

<code class="language-csharp">string testVariable = "value";
string nameOfTestVariable = nameof(testVariable);</code>
Salin selepas log masuk

Operator ini boleh digunakan pada parameter, pembolehubah dan sifat:

<code class="language-csharp">public class TestClass
{
    public void TestMethod(string param1, string param2)
    {
        string nameOfParam1 = nameof(param1);
    }
}</code>
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana saya boleh mendapatkan nama pembolehubah atau parameter C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan