Excelファイルをアップロードしていますが、そのファイルを読んだ後、この結果が得られます。
var data = from c in excel.Worksheet<QuestionMaster>()
select new
{
c.Questionname,
c.Answer1,
c.Answer2,
c.Answer3,
c.Answer4,
c.CorrectAnswer,
};
ここで、アップロードされたデータの列がnullであってはならないことを確認する必要があります
そのための私のコードは次のとおりです。
質問マスターはモデルクラスです
QuestionMaster questions = new QuestionMaster();
QuestionMaster temp = new QuestionMaster();
List<QuestionMaster> ques = new List<QuestionMaster>();//
foreach (var item in data)
{
int i = 0;
if (item.Questionname == null || item.Answer1 == null || item.Answer2 == null || item.Answer3 == null || item.Answer4 == null || item.CorrectAnswer == null)
{
if (item.Questionname != null)
temp.Questionname = item.Questionname.Trim();
else
temp.Questionname = "Question Name not Found in Uploaded Excel File";
if (item.Answer1 != null)
temp.Answer1 = item.Answer1.Trim();
else
temp.Answer1 = "Answer 1 Not Found in Uploaded Excel File";
\\Some more Couple of If-Else Conditions
ques.Add(temp);
}
問題は次のとおりです
。3つの異なる行があり、その中にいくつかのヌル列があり、上記の条件が真になったとします。
ques.add (temp)が2 回目または 3 回目に実行されると、以前に追加された他のリスト アイテムが上書きされますが、リストに追加されたアイテムの数は変わりません。これは、リスト全体をtemp
の現在のデータで上書きしていることを意味します。
どこが間違っているのか教えてください。
前もって感謝します!!!