public static Post[] GetRecent(int num){ List<Post> posts = new List<Post>(num); DbDataReader reader = DBHelper.ExecuteReader ( "SELECT * FROM post_meta ORDER BY created DESC LIMIT @limit;", new Dictionary<string,object> { { "@limit",num } }, true); while (reader.Read()) { Post post = new Post(); post.id = reader.GetString(0); post.title = reader.GetString(1); post.subtitle = reader.GetString(2); post.author = reader.GetInt16(3); string dt = reader.GetString(4); post.created = DateTime.Parse(dt); posts.Add(post); } reader.Close(); return posts.ToArray(); }
public static Post FromId (string id) { Post post = null; if(!id.All(char.IsLetterOrDigit)){//Quick validate return post; } DbDataReader reader = DBHelper.ExecuteReader ( "SELECT * FROM post_meta WHERE id LIKE @id LIMIT 1", new Dictionary<string,object> { { "@id",id + '%' } }, true); if (reader.HasRows) { post = new Post(); reader.Read(); post.id = reader.GetString(0); post.title = reader.GetString(1); post.subtitle = reader.GetString(2); post.author = reader.GetInt16(3); } reader.Close(); return post; }
public static Post FromTemplate () { //TODO: Write a templating system. Post post = new Post(); return post; }