DataAccessLayer.DataBase.GetPost C# (CSharp) Метод

GetPost() публичный Метод

public GetPost ( System.Guid postId ) : Post
postId System.Guid
Результат Entities.Post
        public Post GetPost(Guid postId)
        {
            var queryString =
                "SELECT posts.postid, posts.postname, posts.source, posts.createdtime, posts.accountid, posts.rating, posts.text, tag, posts.mimetype " +
                "FROM [dbo].posts, [dbo].tags, [dbo].accounts " +
                "WHERE (posts.postid = @postid) AND (tags.postid = posts.postid);";

            using (SqlConnection connection = new SqlConnection(_connectionString))
            {
                var command = new SqlCommand(queryString, connection);

                command.Parameters.AddWithValue("postid", postId);

                connection.Open();
                var reader = command.ExecuteReader();

                if (reader == null)
                {
                    return null;
                }

                while (reader.Read())
                {
                    return new Post()
                    {
                        PostId = postId,
                        NamePost = (string)reader[1],
                        Image = (byte[])reader[2],
                        CreatedTime = (DateTime)reader[3],
                        AccountId = (Guid)reader[4],
                        Rating = (int)reader[5],
                        Text = (string)reader[6],
                        AuthorName = NameById((Guid)reader[4]),
                        Tags = ((string)reader[7]).Split(','),
                        MimeType = (string)reader[8]
                    };
                }

                return null;
            }
        }