Tukar integer kepada rentetan dalam LINQ kepada Entiti
Dalam LINQ kepada Entiti, cuba memberikan integer terus kepada sifat rentetan akan mengakibatkan ralat kerana penukaran ini tidak disokong. Masalah ini berlaku apabila memproses pertanyaan yang memilih objek dengan gabungan sifat integer dan rentetan.
Satu penyelesaian yang mungkin adalah menggunakan kaedah ToString() untuk menukar integer kepada rentetan sebelum memberikannya kepada sifat. Walau bagaimanapun, pendekatan ini juga boleh menyebabkan pengecualian apabila menggunakan LINQ kepada Entiti.
Penyelesaian yang lebih dipercayai untuk menukar integer kepada rentetan dalam LINQ kepada Entiti ialah menggunakan kaedah SqlFunctions.StringConvert. Kaedah ini membolehkan anda menukar integer kepada rentetan menggunakan format yang ditentukan. Anda boleh berjaya menukar integer kepada rentetan dengan menukarkannya kepada nombor berganda atau perpuluhan sebelum menggunakan SqlFunctions.StringConvert.
Kod yang diperbetulkan menggunakan SqlFunctions.StringConvert adalah seperti berikut:
<code>var items = from c in contacts select new ListItem { Value = SqlFunctions.StringConvert((double)c.ContactId).Trim(), Text = c.Name };</code>
Atas ialah kandungan terperinci Bagaimana cara menukar integer dengan selamat ke linq ke entiti?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!