@@ -11,9 +11,9 @@ public class SearchServices(ILogger<SearchServices> log, QuestionsProvider quest
11
11
{
12
12
public async Task Any ( SearchTasks request )
13
13
{
14
- if ( request . AddPostId != null )
14
+ if ( request . AddPostToIndex != null )
15
15
{
16
- var id = request . AddPostId . Value ;
16
+ var id = request . AddPostToIndex . Value ;
17
17
var questionFiles = await questions . GetQuestionAsync ( id ) ;
18
18
19
19
log . LogInformation ( "Adding Post '{PostId}' Question and {AnswerCount} to Search Index..." ,
@@ -65,16 +65,18 @@ await db.ExecuteNonQueryAsync($@"INSERT INTO {nameof(PostFts)} (
65
65
var userName = fileType . Substring ( 2 ) ;
66
66
log . LogDebug ( "Adding Human Answer {FilePath}" , file . VirtualPath ) ;
67
67
var modifiedDate = post . LastEditDate ?? ( post . CreationDate > minDate ? post . CreationDate : minDate ) ;
68
- db . ExecuteNonQuery ( $@ "INSERT INTO { nameof ( PostFts ) } (
68
+ var refId = $ "{ id } -{ userName } ";
69
+ await db . ExecuteNonQueryAsync ( $ "DELETE FROM { nameof ( PostFts ) } where { nameof ( PostFts . RefId ) } = { QuotedValue ( refId ) } ") ;
70
+ await db . ExecuteNonQueryAsync ( $@ "INSERT INTO { nameof ( PostFts ) } (
69
71
rowid,
70
72
{ nameof ( PostFts . RefId ) } ,
71
73
{ nameof ( PostFts . UserName ) } ,
72
74
{ nameof ( PostFts . Body ) } ,
73
75
{ nameof ( PostFts . ModifiedDate ) }
74
76
) VALUES (
75
77
{ post . Id } ,
76
- ' { id } - { userName } ' ,
77
- ' { userName } ' ,
78
+ { QuotedValue ( refId ) } ,
79
+ { QuotedValue ( userName ) } ,
78
80
{ QuotedValue ( post . Body ) } ,
79
81
{ QuotedValue ( modifiedDate . ToString ( "yyyy-MM-dd HH:mm:ss" ) ) }
80
82
)" ) ;
@@ -92,6 +94,8 @@ await db.ExecuteNonQueryAsync($@"INSERT INTO {nameof(PostFts)} (
92
94
? DateTimeOffset . FromUnixTimeSeconds ( created ) . DateTime
93
95
: file . LastModified ;
94
96
log . LogDebug ( "Adding Model Answer {FilePath} {UserName}" , file . VirtualPath , userName ) ;
97
+ var refId = $ "{ id } -{ userName } ";
98
+ await db . ExecuteNonQueryAsync ( $ "DELETE FROM { nameof ( PostFts ) } where { nameof ( PostFts . RefId ) } = { QuotedValue ( refId ) } ") ;
95
99
db . ExecuteNonQuery ( $@ "INSERT INTO { nameof ( PostFts ) } (
96
100
rowid,
97
101
{ nameof ( PostFts . RefId ) } ,
@@ -100,8 +104,8 @@ await db.ExecuteNonQueryAsync($@"INSERT INTO {nameof(PostFts)} (
100
104
{ nameof ( PostFts . ModifiedDate ) }
101
105
) VALUES (
102
106
{ nextId ++ } ,
103
- ' { id } - { userName } ' ,
104
- ' { userName } ' ,
107
+ { QuotedValue ( refId ) } ,
108
+ { QuotedValue ( userName ) } ,
105
109
{ QuotedValue ( body ) } ,
106
110
{ QuotedValue ( modifiedDate . ToString ( "yyyy-MM-dd HH:mm:ss" ) ) }
107
111
)" ) ;
@@ -125,5 +129,4 @@ async Task<Post> ToPostAsync(IVirtualFile file)
125
129
var post = json . FromJson < Post > ( ) ;
126
130
return post ;
127
131
}
128
-
129
- }
132
+ }
0 commit comments