2009-02-28 21 views
3

bir CSV listesine herhangi bir nesnenin bir dizi dönüştürmek için Linq kullanıyorum: "Menzil değişkeni adı üyesi adıyla eşleşmesi olamaz:Garip Linq Hata

String.Join(",", (From item In objectArray Select item.ToString()).ToArray()) 

Bu bana garip hata veriyor 'Nesne' sınıfının

ben "Hiçbir şey" bir ayar ile, bir VB StrConv yönteminde dize sararak o yuvarlak alabilirsiniz:

String.Join(",", (From item In oArray Select StrConv(item.ToString(), VbStrConv.None)).ToArray()) 

Ancak bu bir hack biraz gibi görünüyor ve ben istiyorum bunu önlemek için.

Bu sorun olduğunda herhangi bir fikri olan var mı? Sorun VB Select maddesi tarafından döndürülen değişkene bir ad verir ise

String.Join(",", (From item In objectArray Select stringVal = item.ToString()).ToArray()) 

:

cevap

10

için kodunuzu değiştirin. Kesin olarak, ToStringitem.ToString() için ToString yöntemiyle çakışacak adı vermeyi dener. Bunu önlemek için, açıkça bir ad belirtmelisiniz (üst satırda stringVal).

+1

Teşekkürler, bu çok yardımcı oluyor. Çok takdir –