@@ -274,32 +274,25 @@ public override void Execute(IDocumentSession session)
274
274
275
275
public class StoreManyDocs < T > : DocumentsOp where T : notnull
276
276
{
277
- private readonly T [ ] _documents ;
278
-
279
- public StoreManyDocs ( params T [ ] documents ) : base ( documents . Cast < object > ( ) . ToArray ( ) )
280
- {
281
- _documents = documents ;
282
- }
277
+ public StoreManyDocs ( params T [ ] documents ) : base ( documents . Cast < object > ( ) . ToArray ( ) ) { }
283
278
284
279
public StoreManyDocs ( IList < T > documents ) : this ( documents . ToArray ( ) ) { }
285
280
286
281
public StoreManyDocs < T > With ( T [ ] documents )
287
282
{
288
283
Documents . AddRange ( documents . Cast < object > ( ) ) ;
289
- _documents . AddRange ( documents ) ;
290
284
return this ;
291
285
}
292
286
293
287
public StoreManyDocs < T > With ( T document )
294
288
{
295
- Documents . Append ( document ) ;
296
- _documents . Append ( document ) ;
289
+ Documents . Add ( document ) ;
297
290
return this ;
298
291
}
299
292
300
293
public override void Execute ( IDocumentSession session )
301
294
{
302
- session . Store ( _documents ) ;
295
+ session . Store ( Documents . Cast < T > ( ) ) ;
303
296
}
304
297
}
305
298
@@ -317,7 +310,7 @@ public StoreObjects With(object[] documents)
317
310
318
311
public StoreObjects With ( object document )
319
312
{
320
- Documents . Append ( document ) ;
313
+ Documents . Add ( document ) ;
321
314
return this ;
322
315
}
323
316
@@ -384,14 +377,21 @@ protected DocumentOp(object document)
384
377
public abstract void Execute ( IDocumentSession session ) ;
385
378
}
386
379
387
- public abstract class DocumentsOp : IMartenOp
380
+ public interface IDocumentsOp : IMartenOp
381
+ {
382
+ IReadOnlyList < object > Documents { get ; }
383
+ }
384
+
385
+ public abstract class DocumentsOp : IDocumentsOp
388
386
{
389
- public object [ ] Documents { get ; }
387
+ public List < object > Documents { get ; } = new ( ) ;
390
388
391
389
protected DocumentsOp ( params object [ ] documents )
392
390
{
393
- Documents = documents ;
391
+ Documents . AddRange ( documents ) ;
394
392
}
395
393
396
394
public abstract void Execute ( IDocumentSession session ) ;
395
+
396
+ IReadOnlyList < object > IDocumentsOp . Documents => Documents ;
397
397
}
0 commit comments