0

Active Directory プロパティ ["thumbnailPhoto"] から画像を読み込んでいます。

私のモデルはこれに割り当てます:

public Image thumbnailPhoto { get; set; }

私のサービスはこのコードを実行して、Active Directory からイメージを取得し、それをモデルに配置します。

public Image GetUserPicture(string userName)
        {
            using (DirectoryEntry de = new DirectoryEntry("LDAP://server.com"))
            using (DirectorySearcher ds = new DirectorySearcher(de))
            {
                ds.Filter = ("(&(objectCategory=person)(objectClass=User)(sAMAccountName=" + userName + "))");
                ds.PropertiesToLoad.Add("thumbnailPhoto");
                SearchResult rs = ds.FindOne();
                using (MemoryStream s = new MemoryStream(rs.Properties["thumbnailPhoto"][0] as byte[]))
                {
                    return Bitmap.FromStream(s);
                }
            }
        }

上記のメソッドを呼び出して、次の行からモデルに割り当てます。

user.thumbnailPhoto = GetUserPicture(rs.Properties["sAMAccountName"][0].ToString());

これはすべて機能しているようで、エラーはありません。デバッガーで、user.thumbnailPhoto のタイプが System.Drawing.Bitmap であることがわかります。

私が今立ち往生しているのは、これをWebページに表示する方法ですか?

すべてのページで必要になるので、これthumbnailPhotoをに投げ込むことは可能ですか?Session["UserPhoto"]

4

1 に答える 1