簡體   English   中英

如何模擬第三方Web服務LINQ數據提供程序?

[英]How to mock a 3rd party web service LINQ data provider?

模擬由第三方制作的LINQ Web服務數據提供程序涉及到什么,對我來說實際上是一個黑盒子? 這是黑匣子的典型用法:(修改以保護無辜者,又稱NDA)

var conn = new RemoteServer (username,password);
var result = from row in conn.GetSomeData()
    where row.this == "Hello" && row.that != "World"
    select new { row.this, row.that, row.theOther };

到目前為止我知道resultIEnumerable<T> 另一個用法示例:

string something="xxx";
var result = from row in conn.SubscribeAsync()
    where row.this == something
    select new MyObject(something) { row.that, row.theOther };

(這將繼續推送數據,也許每秒推送一些項目,我會想要仔細模擬定時序列。)

我想我真正的問題是,它會如此簡單:

 class MockRemoteServer
 {
     IEnumerable GetSomeData()
     {
          return new[]
          {
              new {this="1",that="2",theOther="special"},
              new {this="hello",that="world",theOther="something"}
          }
     }
 }

或者我是否需要自己實現一個完整的LINQ數據提供程序? 如果是這樣,任何書籍或文章的建議? (我的LINQ知識目前基於Jon Skeet的C#In Depth的封面到封面閱讀,而不是其他......)

List<T>通常就足夠了(因為它實現了IEnumerable)。 但是,如果您想了解查詢的實際性能,則無需使用實際的RemoteServer。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM