2017-01-27 9 views
0

diese Code-Basis geschlürft:'FromHeaderAttribute' ist kein Attribut Klasse

https://github.com/RedRiverSoftware/FromHeaderAttribute

nach der Lektüre dieses:

https://river.red/binding-to-and-validating-http-headers-with-web-api-2/

Ich versuche, diese zu ändern:

public IHttpActionResult EchoHeaders([RedRiver.FromHead.FromHeader]StandardHeaders headers) 

zu diesem:

public IHttpActionResult EchoHeaders([FromHeader]StandardHeaders headers) 

Offensichtlich brauchte ich diese an die Spitze der Controller-Klasse hinzuzufügen:

using FromHeaderAttribute.Sample.Models; 

Aber ich diese Störung erhalte:

'FromHeaderAttribute' is not an attribute class. 

Allerdings Blick auf den Code (was ich nicht geändert habe) Die Klasse "FromHeaderAttribute" erbt eindeutig "ParameterBindingAttribute", die "System.Attribute" erbt.

Was fehlt mir, um Attribute definieren zu können, die als Parameterattribute verwendet werden können, ohne ihren gesamten Namespace anzugeben - genau wie Attribute wie '' und 'FromBody'?

Antwort

0

Es stellt sich heraus, dass die Benennung einer Klasse 'FromHeader' und ihre Verwendung als Parameterattribut nicht erkannt wird. Ich habe dies mit einer Reihe von verschiedenen Kombinationen von Datei-, Klassen- und Namespace-Namen versucht und es funktioniert einfach nicht. Der Attributklassenname muss alles außer FromHeader sein.

Verwandte Themen