我已经使自定义类继承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) 我正在研究一个从本地Hdd读取所有文件的项目,我指定了我想要包含在搜索中的扩展名.
所有选择的文件扩展都基于文件是文本内容的事实.
所以对于我的使用,我可以指定要进入帐户的扩展名,例如.cs .html .htm .css .js等'
如果我想添加一个功能,让通用用户选择扩展,让他从所有可用的Windows文件扩展名中选择,但在该列表中只包含那些文本中的文件.例如我们知道exe,mp3.mpg,avi不是,但他可能有一些我们没有考虑的其他类型的文件(.extensions).
有没有办法决定,基于系统文件属性,如果没有什么会的方式来筛选纯文本文件的内容?
c# ×2
algorithm ×1
downcast ×1
file ×1
idatareader ×1
performance ×1
sql-server ×1
string ×1
text ×1