這兩天斷斷續續的完成了個小例子,這裡簡單記錄一下如何顯示內部物件的內部資料。
在資料庫linqtest中新建兩張表:user和role,其中,role表中的roleid是user表中的外來鍵。
顯示效果我希望是這樣的:
但是,剛開始的時候,顯示效果是這樣的:
為什麼會這樣呢?因為在**中,role實體是作為乙個內部物件巢狀在user中的,顯示的時候就成了這個樣子?那麼怎麼才能讓這個內部物件中的資料顯示出來達到我想要的效果呢?
第一種方法:改寫role實體
之前的role實體類是這個樣子的:
public class role
set
}private string rolename;
public string rolename
set
}
改寫以後就是再重寫tostring方法:
//重寫tostring方法,返回角色名稱,這樣才能將role實體內部的資料顯示出來
public override string tostring()
第二種方法:利用新特性——linq
在button的事件中修改,重寫拖乙個button控制項,也是顯示全部使用者,事件**如下:
private void btnlinq_click(object sender, eventargs e)
).distinct(); //返回資料中的非重複元素
this.dgvuser.datasource = t_users.tolist ();
}
在model下新建乙個類
namespace model
public string userpwd
public string rolename}}
顯示結果:
ok ,目的達到了。
其實一開始修改button的時候是不能顯示資料的,但是在程式執行輸出視窗中資料時顯示的。linq的執行時機是三步:定義、遍歷、查詢。在model中加了乙個t_user_role的目的就是為了給顯示資料乙個型別,否則無法顯示。暫時就這麼多了。。。
python類定義內部呼叫物件的例項
python類定義內部呼叫物件的例項 coding utf 8 class newclass def init self,intval 1 self.the int intval if intval 2 0 self.parity even else self.parity odd def proc...
建立內部類的例項物件,必須建立外部類的例項物件
outer類中定義了乙個成員內部類inner,需要在main 方法中建立inner類例項物件,方法 outer.inner in new outer new inner 內部類可以引用全域性變數 靜態方法建立例項內部類物件 內部類的最重要的乙個特點就是它可以直接訪問它外部類的成員變數。成員變數是 物...
靜態方法中不能new內部類的例項物件的總結
原文 class test start system.out.println aaaaaa class a 靜態方法中不能new內部類的例項物件。這是為什麼了?內部類的最重要的乙個特點就是它可以直接訪問它外部類的成員變數。成員變數是 物件身上的。物件建立完成了,才會為成員變數分配空間。能呼叫成員變數...