2009-12-27 92 views
0

我想將對象實例中的某些數據傳遞給它的屬性,並且我在理解如何實現它時遇到麻煩。這裏有一個例子:將對象實例數據傳遞給屬性

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

的想法是,AuthenticateAttribute實例將填充用戶信息的實例。

我想將info的引用傳遞給AuthenticateAttribute的實例,從而消除屬性和特定類之間的強耦合。

這可能嗎?

回答

1

屬性本身不應該有UserInfo字段IMO。請記住,它將應用於類型的屬性的一個實例 - 並非每種類型的實例都有一個實例。

如果你可以給一個更全面的例子(顯示它應用於代碼),我們也許能夠幫助更多...

+0

對我來說這是非常新的消息,謝謝。 這是否意味着如果需要更改某些類型的字段,則屬性應該知道應用類型的內部屬性? – Andy

+0

@Andy:我認爲改變類型本身的字段是非常不尋常的。通常該屬性爲其他代碼提供元數據以供使用 - 它比主動性更爲被動。 –

-1

控制器的ViewData的收藏是從屬性的訪問,您可以將您的UserInfo反對它,然後在控制器的訪問中訪問它。 您也可以使用包含UserInfo的類型模型。這裏描述了這種情況Get permission from Authorize Attribute?

更改應用於該屬性的類型字段並不常見,您必須非常謹慎。

+0

謝謝,這不是我正在尋找的。我關心的主要是關於Controller實例和它的屬性之間的交互。 – Andy

相關問題