Il tipo 'IEnumerable <>' è definito in un assembly a cui non viene fatto riferimento. System.Runtime

asp.net-core c# entity-framework-core project.json

Domanda

Ho un'applicazione web asp.net 5 che fa riferimento a una libreria di classi.

Quella libreria di classi utilizza Entity Framework 7 per eseguire una query.

public IEnumerable<Member> GetMemberyByFirstName(string firstName)
{
    var members = _context.Members.Where(m => m.FirstName.Contains(firstName));
    return memebers;
}

Ma ottengo questo errore di compilazione

Il tipo 'IEnumerable <>' è definito in un assembly a cui non viene fatto riferimento. È necessario aggiungere un riferimento all'assembly 'System.Runtime, Version = 4.0.0.0, Culture = neutral, PublicKeyToken = b03f5f7f11d50a3a'. *

Risposta accettata

Ho già capito come farlo ma volevo solo che le informazioni fossero disponibili.

È piuttosto complicato e ruota intorno al progetto.

La risposta molto breve è ho cambiato il project.json nella libreria di classi a

{
    "version": "1.0.0-*",
    "description": "Member.Business Class Library",
    "authors": [ "bryan" ],
    "tags": [ "" ],
    "projectUrl": "",
    "licenseUrl": "",
    "frameworks": {
        "dnx451": { },
        "dnxcore50": {  
            "dependencies": {
               "Microsoft.CSharp": "4.0.1-beta-23516"
            }
        }
    },
    "dependencies": {
        "EntityFramework.MicrosoftSqlServer": "7.0.0-rc1-final",
        "Member.DataLayer": "1.0.0-*",
        "Member.Domain": "1.0.0-*",
        "System.Collections": "4.0.11-beta-23516",
        "System.Linq": "4.0.1-beta-23516",
        "System.Runtime": "4.0.21-beta-23516",
        "System.Threading": "4.0.11-beta-23516"
    }
}

È possibile trovare molti più dettagli qui - http://nodogmablog.bryanhogan.net/2016/01/the-type-is-defined-in-an-assembly-that-is-not-referenced-system-runtime/


Risposta popolare

prova a tornare come sotto-

var members = _context.Members.Where(m => m.FirstName.Contains(firstName)).ToList();

Inoltre, non capisco la definizione della funzione-

void IEnumerable<Member>

Se vuoi restituire IEnumerable<Member> dovrebbe essere IEnumerable<Member> e non void IEnumerable<Member>



Autorizzato sotto: CC-BY-SA with attribution
Non affiliato con Stack Overflow
È legale questo KB? Sì, impara il perché
Autorizzato sotto: CC-BY-SA with attribution
Non affiliato con Stack Overflow
È legale questo KB? Sì, impara il perché