小编Jbo*_*han的帖子

使用继承的自定义IDataReader从IDbCommand读取

我已经使自定义类继承IDataReader并已成功实现自定义ServerWriter sqlBulkCopy与使用C#对象而不是的自定义类DataTable.

事实证明,这是我所怀疑的更有效的方法.

现在我正在努力Read,我有一些问题

这是IDataReader:

// get Server Data Table Object IDataReader
public class GetSDTOIDataReaderM : IDataReader
{
   //private IEnumerator<MyTestObject> enumerator = null;

   public MySqlDbTableObject.Raw.SqlDbTableM propSqlTbl { get; set; }

   // implementing relevant GetValue(), filedCount() and Read()
   // this is how I did with WriteToServer
   public bool Read()
   {
       return ++this.ReaderRowsCount < this.propSqlTbl.Table.ElementAt(0).Row.Count;
   }
}
Run Code Online (Sandbox Code Playgroud)

该对象与其对应的SqlTable完全映射.

SqlCommand在我的自定义IDataReader上设置一个到ExecuteReader()没有工作,所以我尝试了 IDbCommand它然后它编译,但仍然在尝试阅读时我得到一个错误:

无法将"System.Data.SqlClient.SqlDataReader"类型的对象强制转换为"GetSDTOIDataReaderM"类型

this.propComunicator.AsGetSDTOCom().SqlCmd.Connection.Open();
//this is the line of the error
using (this.propComunicator.AsGetSDTOCom().SDTOIDataReader …
Run Code Online (Sandbox Code Playgroud)

c# sql-server performance idatareader downcast

10
推荐指数
1
解决办法
461
查看次数

是文件可读的(包含文本而非可访问)

我正在研究一个从本地Hdd读取所有文件的项目,我指定了我想要包含在搜索中的扩展名.

所有选择的文件扩展都基于文件是文本内容的事实.

所以对于我的使用,我可以指定要进入帐户的扩展名,例如.cs .html .htm .css .js等'

如果我想添加一个功能,让通用用户选择扩展,让他从所有可用的Windows文件扩展名中选择,但在该列表中只包含那些文本中的文件.例如我们知道exe,mp3.mpg,avi不是,但他可能有一些我们没有考虑的其他类型的文件(.extensions).

有没有办法决定,基于系统文件属性,如果没有什么会的方式来筛选纯文本文件的内容?

c# string algorithm text file

9
推荐指数
1
解决办法
98
查看次数

标签 统计

c# ×2

algorithm ×1

downcast ×1

file ×1

idatareader ×1

performance ×1

sql-server ×1

string ×1

text ×1