về cơ bản tôi đang xây dựng một mẫu T4 rất chung chung và một trong những điều tôi cần làm là nói in variable.ToString()
. Tuy nhiên, tôi muốn nó để đánh giá danh sách và foreach thông qua họ và thay vì in ListItem.ToString()
mẫu T4 của tôi không biết loại variable
sẽ được trước thời hạn, đó là lý do tại sao điều này là như vậy chung chung.Làm thế nào để kiểm tra xem một biến là một số IEnumerable của một số loại
Nhưng mã hiện tại của tôi mà được tạo ra trông như sau:
if(variable!=null)
if(variable is IEnumerable) //error here
foreach(var item in variable)
Write(item.ToString());
tôi nhận được một lỗi biên dịch trên dòng rõ rệt cho "Sử dụng kiểu generic System.Generic.Collections.IEnumerable đòi hỏi một loại lập luận"
Tôi không thực sự quan tâm đó là loại mặc dù, tôi chỉ muốn biết nếu bạn có thể foreach thông qua các biến. Tôi nên sử dụng mã nào?
Có vẻ như đây có thể là câu trả lời hay hơn. – Earlz
Tôi đã thay đổi câu trả lời vì tôi đã sử dụng phương pháp này, theo ý kiến của tôi thì sạch sẽ hơn nhiều. – Earlz
Ngoài ra, để có được xung quanh lỗi Mono được đề cập dưới đây, tôi đã phải đúc 'biến' vào một' đối tượng' đầu tiên. – Earlz