Ich habe eine Azure-Funktion, die für die Verbindung mit einem Azure AD und das Abrufen einiger Azure AD-Informationen zuständig ist.Azure-Funktionen: C# -Kompilierungsfehler mit System.Linq.Expressions
Wenn ich die .Expand()
Eigenschaft auf den .Users
verwenden, erhalte ich die folgenden Kompilierungsfehler:
activeDirectoryClient.Users.Expand(x => x.MemberOf).ExecuteAsync().Result;
(38,17): error CS0012: The type 'Expression<>' is defined in an assembly that is not referenced. You must add a reference to assembly 'System.Linq.Expressions
ich den Namespace korrekt hinzugefügt habe, und auch versucht, es in der project.json hinzuzufügen:
{
"frameworks": {
"net46":{
"dependencies": {
"Microsoft.IdentityModel.Clients.ActiveDirectory": "3.13.5",
"Microsoft.Azure.ActiveDirectory.GraphClient": "2.1.0",
"System.Linq": "4.0.0",
"System.Linq.Expressions": "4.0.0"
}
}
}
}
Gibt es bekannte Probleme mit Linq.Expressions
in Azure-Funktionen Lösung mit C#?
Hallo Alexey, Vielen Dank für die schnelle Antwort. Ich habe die gleichen using Klauseln und die gleichen project.son Einträge. var activeDirectoryClient = neuer ActiveDirectoryClient (neuer Uri ("https://graph.windows.net/" + aadTenantName), async() => {return await GetAccessToken (aadTenantName, clientID, clientSecret);}); var users = activeDirectoryClient.Users.Expand (x => x.MemberOf) .ExecuteAsync(). Ergebnis; // Dies gibt mir einen Kompilierungsfehler // var users = activeDirectoryClient.Users.ExecuteAsync(). Ergebnis; Dies wird korrekt kompiliert. – Jens
Hallo Jens. Ich habe meine Antwort bearbeitet. Versuchen Sie, "System.Linq. *" - Abhängigkeiten von project.json zu entfernen und # r "System.Linq.Expressions" in run.csx hinzuzufügen. Dieser Code kompiliert für mich ohne Fehler. –
Hallo Alexey. Tatsächlich funktioniert das richtig. Danke, dass du mir dabei geholfen hast. Ich verstehe jedoch nicht, was mit meinem anfänglichen Denken falsch war :-) – Jens