内部で作成された Excel インポート ツールを使用しています。このツールは、Excel スプレッドシートを読み取り、その結果を sql ce データベースにインポートすることになっています。データベースを確認しましたが、デバッグ後、Excel スプレッドシートから値を取得した時点で問題が発生していることがわかります。私の問題は、返された結果が切り捨てられることです。
「Here」とマークされたコメントでコードを調べると、rdr.GetValue(col).ToString() は既に切り捨てられています。セルの価値を最大限に引き出すために何か別のことをする必要があるかどうか疑問に思っています。
using (var cmd = _xlConn.CreateCommand())
{
cmd.CommandText = "SELECT * FROM [" + entityType.Name + "$]";
try
{
using (var rdr = cmd.ExecuteReader())
{
while (rdr.Read())
{
if (!rdr.IsDBNull(0))
{
var id = Convert.ToInt32(rdr.GetValue(0));
var eid = Entity.InsertRecord(entityType.Name + "_" + id, entityType.ID, true);
map.Add(id, eid);
int col = 0;
foreach (var entityKey in _entityKeys.Where(ek => ek.EntityType_Fk == entityType.ID))
{
if (!rdr.IsDBNull(++col))
{
//-------------------------
//--------- HERE ----------
//-------------------------
EntityKeyData.InsertRecord(eid, entityKey.ID, rdr.GetValue(col).ToString());
}
}
}
}
}
}
}
これは渡される私のデータです:
<h1><span style="color:blue; margin: 10, 10, 10, 10; font-family:Arial;">You can drive
or walk on main street… Sometimes… When we allow it. Lalalalalalla lalallala lalalalal
lalallalal allalalalalla lalallalalalalal alalallasldlal dldlaldsls dldlldl
laldfolafjlkmn oiasfjadlfjalkfj lkajdflidja laisdjfolieanfldsn ladllaldladsl
aldllselasldeesl dfoaihfneal adfajlkfmf alsiej</span></h1>
これは切り捨てられたものです:
<h1><span style="color:blue; margin: 10, 10, 10, 10; font-family:Arial;">You can drive
or walk on main street… Sometimes… When we allow it. Lalalalalalla lalallala lalalalal
lalallalal allalalalalla lalallalalalalal alalallasldlal dldlaldsls dldlldl laldf
切り捨てられたテキストで文字数を数えたところ、最終的に 255 になりました これは一般的な問題ですか?