-1

データ行に複数の値を表示しようとしていますが、さまざまな方法で試してみましたが、エラーが発生しました私のコードは、

 crow["BaseCostHighWay * POF * PTF * WCF"] = BaseCostScoreHW + POF + PTF + WCF;

データ行に "BaseCostScoreHW " "POF" "PTF" "WCF" を表示しようとすると、それらの間に「+」を使用すると、この場所でエラーが発生します

ご提案をお待ちしております。

編集済み、

のように見えるはずです

BaseCostHighWay * POF * PTF * WCF

2.5,1.6,8.1,0.9
4

3 に答える 3

1

変数「BaseCost..」、「PDF」、「PTF」などのタイプによっては、さまざまなエラーが発生する場合があります。したがって、まず、質問するときは、常にどのようなエラーが発生しているかを伝えてください。

もう 1 つは、「+」とはどういう意味ですか? 数字を合計しますか、それともテキストをくっつけますか?

典型的な問題から推測すると、最も可能性が高いのは、内部に複数の「値」を含む文字列を作成する必要があり、変数の型が混在していることです。「.ToString()」を次々に追加してみて、エラーが再度発生するかどうかを確認してください。

string text = BaseCostScoreHW.ToString() + POF.ToString() + PTF.ToString() + WCF.ToString();
crow["BaseCostHighWay"] = text;
// text = 1.12.23.34.4

それは少し冗長です。本当に「+」演算子を使用したい場合は、最初の値が文字列であることを確認してください。

string text1 = BaseCostScoreHW.ToString() + POF + PTF + WCF;
string text2 = string.Empty + BaseCostScoreHW + POF + PTF + WCF;
string text3 = "" + BaseCostScoreHW + POF + PTF + WCF;
// text1/2/3 = 1.12.23.34.4

これら 3 行の効果は同じです。

しかし、それが機能したとしても、すべてをしっかりと接着するため、結果はきれいではありません. 式にさらに文字列や文字を追加できます。

string text = "" + BaseCostScoreHW + "," + POF + "," + ...

しかし..それはほとんど維持できません。少しのテキストをフォーマットするより良い方法は、 .. を使用することですstring.format:

string text = string.Format("{0},{1},{2},{3}", BaseCostScoreHW, POF, PTF, WCF);
crow["BaseCostHighWay"] = text;
// text = 1.1,2.2,3.3,4.4

ここにはあいまいな「+」がないことに注意してください。「フォーマット」、「このテンプレートが好き」、「ここに値があります」と言うだけです。

于 2013-06-06T07:47:18.150 に答える
0

DataColumn を試しましたか? DataColumn クラス

于 2013-06-06T07:45:53.123 に答える