-1

私は基本クラスPostsとを持っておりNotificationsNotesからPhotos継承してPostsいます。Posts から継承されたすべてのオブジェクトを含む単一のリストを単一のList<Post>.

            var notes = posts.OfType<Note>();
            var photos = posts.OfType<Photo>();
            var notifications = posts.OfType<Notification>(); ;

            return (from n in notes
                    select new Stream()
                    {
                        id = n.post_id,
                        value = n.value,
                        timestamp = n.timestamp,
                        type = "note"
                    }).ToList();

もちろん、上記はメモのみを返します。

前もって感謝します。

4

1 に答える 1

0

から継承するオブジェクトのリストが既にありますPosts:

var notes = posts.OfType<Note>();
var photos = posts.OfType<Photo>();
var notifications = posts.OfType<Notification>();

以下のようにリストを作成Postsします。

List<Posts> posts = new List<Posts>();

そして追加Posts

//posts.Add(new Note());
//posts.Add(new Notification());
//posts.Add(new Photo());

posts.AddRange(notes);
posts.AddRange(photos);
posts.AddRange(notifications);

// do the projection into Stream
return (from n in posts
        select new Stream()
        {
            id = n.post_id,
            value = n.value,
            timestamp = n.timestamp,
            type = "note"
        }).ToList();
于 2013-10-27T21:37:25.160 に答える