2017-06-14 17 views
0

BrandsSmartまたはSunを含むデータがあります。プログラムは、CSVをアップロードしますが、これまでのいずれかSmartSunがない含まれている行がある場合、プログラムは、CSVの列Brandsにチェックする必要があるCSVをアップロードする前に、私はこのDataTableとstringが存在する場合の比較方法

DataTable dtCsv = new DataTable(); 
int matchCount; 
using (CsvReader csvReader = new CsvReader(new StreamReader(fs), true)) 
    { 
     dtCsv.Load(csvReader); 
    } 

if (dtCsv.Select("BATCH_LEADS<>'" + batch.LeadBatch + "'").Count() != 0) return false; 

foreach (Brand brands in BrandList) 
{ 
     matchCount = dtCsv.Select("BRAND<>'" + brands.BrandName + "'").Count(); 
} 

は、私は知っていた何イムmatchCountに列内の不一致カウントが含まれているため、間違っています。私を助けてください。私はC#を使用しています。これはasp.net MVCプロジェクトです

+0

これは本当に悪い質問です。良い質問を書く方法を知るには、FAQをお読みください。 –

+0

CSVの内容はまだ不明です。コードの誤りを明らかにするために詳細を追加してください。あなたが何を含める必要があるかを知るには、[ask]と[mcve]を読んでください。 –

+0

@SamAxe申し訳ありませんが私の説明は私によって削除されました。 –

答えて

0

最初は、データテーブルがクエリのようなステートメントを使用していることに気づいていません。だから私はこれを好きにした。そしてそれは私のためにうまくいく

int matchCount = 0; 
using (MappingDBUnitOfWork muw = new MappingDBUnitOfWork(new MappingEntities())) 
      { 
       var BrandList = muw.BrandRepository.GetAll(); 
       foreach (Brand brands in BrandList) 
       { 
        matchCount += dtCsv.Select("BRAND ='" + brands.BrandName + "'").Count(); 
       } 
      } 

      if (matchCount != dtCsv.Rows.Count) return false; 
1

以下は正確なコードではありませんが、正しい方向を示すことを願っています。

サンプルコード:

DataTable dtCsv = new DataTable(); 
int matchCount; 
using (CsvReader csvReader = new CsvReader(new StreamReader(fs), true)) 
    { 
     dtCsv.Load(csvReader); 
    } 

    for (int rowcount = 0; rowcount < dtCsv.Rows.Count; rowcount++) 
    { 
      //brands is the column name in excel 
     if(dtCsv.Rows[rowcount]["brands"].ToString() != "sum" || dtCsv.Rows[rowcount]["brands"].ToString() != "smart") 
     { 

       //do some logic 
      } 
    } 

はそれがあったホープ役立つ

おかげ

それは我々がデータテーブルとしてCSVファイルからデータを得た後、我々はまた、以下のように確認することができますですKarthik

関連する問題