Wie teile ich Klassen/Datensätze mit dem Attribut „Microsoft.AspNetCore.Mvc.FromQuery“ über .NET MAUI-Client- und ASP .NC#

Ein Treffpunkt für C#-Programmierer
Anonymous
 Wie teile ich Klassen/Datensätze mit dem Attribut „Microsoft.AspNetCore.Mvc.FromQuery“ über .NET MAUI-Client- und ASP .N

Post by Anonymous »

Die folgende Klasse:

Code: Select all

public abstract record TasksTransactions
{

public abstract record RetrievingOfSelection
{

public const string URN_PATH = "/api/tasks/selection";

public record QueryParameters
{

public ForcedFiltering? forcedFiltering { get; set; }

public record ForcedFiltering
{

[Microsoft.AspNetCore.Mvc.FromQuery(Name = "ff.s")]
public required TaskGateway.SelectionRetrieving.RequestParameters.ForcedFiltering.ProgressStatues progressStatus { get; set; }

}

public OptionalFiltering? optionalFiltering { get; set; }

public record OptionalFiltering
{

[Microsoft.AspNetCore.Mvc.FromQuery(Name = "of.sd")]
public DateOnly? startingDate { get; set; }

[Microsoft.AspNetCore.Mvc.FromQuery(Name = "of.ed")]
public DateOnly? endingDate { get; set; }

[Microsoft.AspNetCore.Mvc.FromQuery(Name = "of.sr")]
public string? searchingByFullOrPartialTitleOrDescription { get; set; }
}

}

}

}
befindet sich im C#-Projekt (nennen wir es „Freigegeben“) mit der folgenden .csproj-Datei:

Code: Select all



net9.0
enable
enable







Die obige Klasse muss von beiden der folgenden Projekte aus zugänglich sein:
  • .NET MAUI-Client
  • AST .NET-Backend
Ich werde die .csproj-Dateien beider am Ende der Frage anhängen.
Derzeit ist Microsoft.AspNetCore nicht über das „Shared“-Projekt zugänglich:

Das Symbol „AspNetCore“ kann nicht aufgelöst werden

aber wenn alle Verwendungen von „Microsoft.AspNetCore“ vorübergehend auskommentiert werden, funktioniert meine Anwendung.
Installieren Microsoft.AspNetCore.Mvc zum „Freigegebenen“ Projekt:

Code: Select all



net9.0
enable
enable











Jetzt ist Microsoft.AspNetCore über das „Shared“-Projekt zugänglich, aber wenn Sie versuchen, die Lösung zu erstellen, schlägt dies fehl mit:

Schweregradcode Beschreibung Projektdateizeilenunterdrückungsstatusdetails
Fehler (aktiv) CS0234
Der Typ- oder Namespacename „ApplicationPartAttribute“ ist im Namespace nicht vorhanden 'Microsoft.AspNetCore.Mvc.ApplicationParts' (fehlt Ihnen eine Assembly-Referenz?) Client (net9.0-ios) D:\XXX\Implementation\Elements\Client\obj\Debug\net9.0-ios\iossimulator-x64\Client.MvcApplicationPartsAssemblyInfo.cs 14

Image

Wenn Sie Microsoft.AspNetCore deinstallieren und alle Verwendungen von Microsoft.AspNetCore vorübergehend auskommentieren, wird die Lösung wieder fehlerfrei erstellt. Wie kann ich das Problem beheben?
Anhang
.csproj-Datei des Clientprojekts
Wurde hauptsächlich von Visual Studio für .NET MAUI + Blazor-Hybridanwendung generiert.

Code: Select all



net9.0-maccatalyst;net9.0-ios;net9.0-android
$(TargetFrameworks);net9.0-windows10.0.19041.0


Exe
Client
true
true
enable
false
enable


Client


com.companyname.client
2302D388-EFAC-4FCF-A8B6-3100441C5C7E


1.0
1

14.2
14.0
24.0
10.0.17763.0
10.0.17763.0
6.5


false








































.csproj-Datei des Serverprojekts
Wurde hauptsächlich von Visual Studio für ASP .NET-Serveranwendung generiert.

Code: Select all



net9.0
enable
enable
ae619771-2592-4d7a-82ae-f1c264e1968e
Linux
..\..\..















Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post