फोन मुझे लगता है कि मैं थोड़ा Moq कॉलबैक तरीकों में से वाक्य रचना पर उलझन में हो सकता है।सेटिंग चर मान()
IFilter filter = new Filter();
List<IFoo> objects = new List<IFoo> { new Foo(), new Foo() };
IQueryable myFilteredFoos = null;
mockObject.Setup(m => m.GetByFilter(It.IsAny<IFilter>()))
.Callback((IFilter filter) => myFilteredFoos = filter.FilterCollection(objects))
.Returns(myFilteredFoos.Cast<IFooBar>());
यह एक अपवाद फेंकता है क्योंकि myFilteredFoos
Cast<IFooBar>()
कॉल के दौरान रिक्त है: जब मैं इस तरह कुछ करने के लिए प्रयास करें। क्या यह काम नहीं कर रहा है जैसा कि मैं उम्मीद करता हूं? मुझे लगता है कि FilterCollection
कहा जाएगा और फिर myFilteredFoos
गैर-शून्य होगा और कलाकारों के लिए अनुमति देगा।
FilterCollection
एक अशक्त जो मुझे इस निष्कर्ष यह नहीं कहा जा रहा है करने के लिए ड्रॉ लौटने में सक्षम नहीं है। इसके अलावा, जब मैं इस तरह myFilteredFoos
घोषित:
Queryable myFilteredFoos;
वापसी कॉल शिकायत है कि myFilteredFoos से पहले ही आरंभ नहीं हो जाता इस्तेमाल किया जा सकता है।
उत्तर और कोड में कमी के लिए धन्यवाद! –