Domanda

Vorrei trasferire alcuni dati da un'istanza di un oggetto per l'attributo, e non ho problemi inderstanding come implementarlo.Ecco un esempio:

[AuthenticateAttribute]
public class MyController: Controller
{
    UserInfo info;
}

L'idea è che AuthenticateAttribute istanza popolare UserInfo istanza.

Voglio passare di riferimento per info per un'istanza di AuthenticateAttribute e, di conseguenza, eliminare forte accoppiamento tra l'attributo e il particolare MyController classe.

È possibile questo?

È stato utile?

Soluzione

L'attributo per sé non dovrebbe avere il campo UserInfo IMO. Tenete a mente che ci sarà un'istanza dell'attributo per il tipo è applicato ad -. Non uno per ogni istanza di quel tipo

Se si potesse fare un esempio più completo (che mostra il codice è applicato a) potremmo essere in grado di aiutare di più ...

Altri suggerimenti

Il Simbolo raccolta di controllore è accessibile dall'attributo e puoi aggiungere la tua UserInfo oggetto, per poi accedere al controller di acions.È inoltre possibile utilizzare il tipo di modello contenente UserInfo.Questo scenario è descritto qui Ottenere il permesso da Autorizzare Attributo?

Cambiando il tipo di campi attributo che viene applicata ad esso, non è comune, e si deve essere molto cauti.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top