D ドライブ (D:\TaalTipsDocumenten) のフォルダー内のインデックス付きファイルを検索しようとすると、例外 (OleDBException: 指定されていないエラー) が発生します。このコードが過去 (2 か月前) に機能していたことは知っていますが、そのプロジェクトの作業を続けようとすると、機能しなくなったようです。
次のコードの実行中に、次の行でエラーが発生します。
adapter.Fill(dt);
Datatable (dt) が正しく入力されていると言えますが、それでもその行でエラーが発生します。また、.Next() 関数で OleDbDataReader を使用しようとすると、結果がオーバーランし、最終的にエラーがスローされます。
var query11 = @"SELECT System.DateCreated,
System.ItemName,
System.ItemUrl,
System.Size,
System.Search.HitCount FROM SystemIndex " +
@"WHERE scope ='file:D:/TaalTipsDocumenten' AND CONTAINS('" + word + "') ";
FileOverviewModel returnModel = new FileOverviewModel();
returnModel.Files = new List<FileModel>();
returnModel.Search = word;
DataTable dt = new DataTable();
using (OleDbConnection connection = new OleDbConnection(@"Provider=Search.CollatorDSO;Extended Properties=""Application=Windows"""))
using (OleDbCommand command = new OleDbCommand(query11, connection))
using (OleDbDataAdapter adapter = new OleDbDataAdapter(command))
{
adapter.Fill(dt);
}
エラーはあまり言いません(指定されていません):
System.Data.OleDb.OleDbException はユーザー コードによって処理されませんでした ErrorCode=-2147467259 HResult=-2147467259 メッセージ = 指定されていないエラー ソース = System.Data .OleDb.OleDbDataReader.GetRowHandles() で System.Data.OleDb.OleDbDataReader.ReadRowset() で System.Data.OleDb.OleDbDataReader.Read() で System.Data.Common.DataAdapter.FillLoadDataRow (SchemaMapping マッピング) で System.Data .Common.DataAdapter.FillFromReader(DataSet データセット、DataTable datatable、String srcTable、DataReaderContainer dataReader、Int32 startRecord、Int32 maxRecords、DataColumn parentChapterColumn、Object parentChapterValue) System.Data.Common.DataAdapter.Fill(DataTable[] dataTables、IDataReader dataReader、 Int32 スタートレコード、System.Data.Common.DbDataAdapter.FillInternal(DataSet データセット、DataTable[] データ テーブル、Int32 startRecord、Int32 maxRecords、文字列 srcTable、IDbCommand コマンド、CommandBehavior 動作) での Int32 maxRecords) System.Data.Common.DbDataAdapter.Fill(DataTable[ ] dataTables、Int32 startRecord、Int32 maxRecords、IDbCommand コマンド、CommandBehavior 動作) System.Data.Common.DbDataAdapter.Fill(DataTable dataTable) at TaalTips.Controllers.HomeController.Search(String word) in D:\Projects\TaalTips\TaalTips \Controllers\HomeController.cs: System.Web.Mvc.ActionMethodDispatcher.Execute(ControllerBase コントローラー、Object[] パラメーター) の lambda_method(Closure , ControllerBase , Object[] ) の 40 行目 System.Web.Mvc.ReflectedActionDescriptor.Execute( ControllerContext controllerContext、IDictionaryIDictionary
2 parameters) at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary
2 つのパラメーター) System.Web.Mvc.Async.AsyncControllerActionInvoker.b__39 (IAsyncResult asyncResult、ActionInvocation innerInvokeState) で System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult2.CallEndDelegate(IAsyncResult asyncResult) at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResultBase
1.End() で System.Web.Mvc.Async.AsyncControllerActionInvoker. System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.b__3d() での EndInvokeActionMethod(IAsyncResult asyncResult) System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters.<>c__DisplayClass46.b__3f() InnerException:
私はすでにいくつかのことを試しました:
- Windows Search サービスを再起動します
- フォルダーからインデックスを削除し、再度追加します
- コンピューターを再起動
- すべての接続が閉じていることを確認してください
- 別のフォルダを作成して、そのフォルダで試してください (同じエラー)
- OleDbDataReader と reader.Next() を使用しますが、同じエラーが発生します
誰かが何か考えがありますか?
前もって感謝します !