Próbuję przenieść aplikację internetową do ASP.Net vNext z ewentualnym celem uruchomienia jej na Linuksie.ASP.NET vNext Core CLR brakujący typ.IsPrimitive
Aplikacja ma dużo kodu refleksji i I musi być brakuje pewnych zależności, jak ja dostaję błędy kompilacji na kod taki jak ten
Type.IsPrimitive, Type.GetConstructor Type.GetMethod Type.GetTypeArray Błąd CS1061 "Typ" nie zawiera definicji "IsPrimitive" i nie można znaleźć metody rozszerzenia "IsPrimitive" akceptującej pierwszy argument typu "Typ" (czy brakuje dyrektywy użycia lub odniesienia do zespołu?)
Błąd CS1061 "Typ" nie zawiera definicji "GetMethod" ani metody rozszerzenia "GetMethod" akceptującej pierwszy można znaleźć argument typu "Typ" (czy brakuje dyrektywy użycia lub odniesienia do zespołu?)
Błąd CS1061 "Typ" nie zawiera definicji "GetProperties" ani metody rozszerzenia "GetProperties" akceptującej pierwszy można znaleźć argument typu "Typ" (czy brakuje dyrektywy użycia lub odniesienia do zespołu?)
Błąd CS1061 "Typ" nie zawiera definicji "GetInterface" ani metody rozszerzenia "GetInterface" akceptującej pierwszy można znaleźć argument typu "Typ" (czy brakuje dyrektywy użycia lub odniesienia do zespołu?)
Mam następujące ing zależności w moich plikach project.json
"frameworks" : {
"aspnetcore50" : {
"dependencies": {
"System.Runtime": "4.0.20-beta-22416",
"System.Linq": "4.0.0.0-beta-22605",
"System.Reflection": "4.0.10.0-beta-22605",
"System.Reflection.Primitives": "4.0.0.0-beta-22605",
"System.Runtime.Extensions": "4.0.10.0-beta-22605",
"System.Reflection.Extensions": "4.0.0.0-beta-22605"
}
Poniższa kompiluje pod VS 2013 i .NET 4.5, ale przyzwyczajenie kompilacji w VS 2015 przy użyciu zależności powyżej
using System;
using System.Reflection;
namespace Project1
{
public class Class1
{
public Class1()
{
Type lBaseArrayType = typeof(Array);
Type lStringType = typeof(string);
string[] lStringArray = new string[1];
if (lStringType.IsPrimitive)
{
}
ConstructorInfo lConstructor = lStringType.GetConstructor(new Type[0]);
MethodInfo lMethod = lStringType.GetMethod("Equals");
Type[] lTArray = Type.GetTypeArray(lStringArray);
PropertyInfo[] lProps = lStringType.GetProperties();
}
}
}
Pokaż swój odpowiedni kod? Najlepiej [Minimalny, kompletny i sprawdzalny przykład] (http://stackoverflow.com/help/mcve). Może to być tak proste, jak brak niektórych instrukcji użycia, ale trudno o tym wiedzieć, chyba że pokażesz nam kod. – mason
Poniżej znajduje się przykładowy fragment kodu, nie robi nic, ale jest tylko wyborem metod, które próbuję wywołać –
Sprawdziłem kod źródłowy na GitHub i nie mogłem znaleźć tych metod. Być może to tylko jedna z rzeczy, których jeszcze nie wdrożyły dla .NET CORE? Możesz nie kompilować tych rzeczy z dyrektywami kompilatora w .NET 5 (nie-CORE). – mason