Domanda

Sto usando VS2010 B2 e EF4 B2 e cercando di utilizzare Rhino Mocks per deridere contesto entità generate da EEF.

var context = MockRepository.GenerateMock<SomeDBEntities>();
IObjectSet<TxMode> objectSet = new List<TxMode> { mode }.AsObjectSet();
context.Expect(c => c.TxModes).Return(objectSet);

Il problema è che c.TxModes è una proprietà di tipo ObjectSet<TxMode> mentre io sto cercando di restituire un IObjectSet<TxMode> ed ottengo il seguente errore di compilazione:

Error 4 The best overloaded method match for 

'Rhino.Mocks.Interfaces.IMethodOptions<System.Data.Objects.ObjectSet
<Data.Entities.TxMode>>.Return(System.Data.Objects.ObjectSet
<Data.Entities.TxMode>)' has some invalid arguments.

Il metodo di estensione AsObjectSet viene da qui .

Qualsiasi idea di come posso ottenere questo per compilare?

È stato utile?

Soluzione

Non si può fare questo. Controlla la serie di post dal Julie Lerman

  1. Agile Entity Framework 4 Repository: Part 1- modello e POCO Classi
  2. Agile Entity Framework 4 Repository: Parte 2 Il Repository
  3. EF4 Agile repository: Parte 3 -Fine sintonia repository
  4. Agile EF 4 Repository Parte 4: Compilato LINQ query
  5. Agile Entity Framework 4 repository Parte 5: IObjectSet e Includi

Si spiega molto bene come costruire il modello di repository con EF4 per farvi beffe di questo. Ci sono anche T4 template, ma che vi permetterà di capire come tutto ciò che funziona. Senza il modello T4 adattato, è ancora un bel po 'di lavoro per avere installato e funzionante, ma io lo trovo un ottimo esercizio. :) Sono infatti attuare io stesso in questo momento.

Buona fortuna;)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top