asked on
//controller
using picture_of_the_day.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
namespace picture_of_the_day.Controllers
{
public class PicOfTheDayController : ApiController
{
[Route("api/PicOfTheday/GetPicByDate/{date}")]
[HttpGet]
public IHttpActionResult GetPicByDate(string date)
{
try
{
var pic = new Picture(date);
return Ok(pic);
}
catch (Exception ex)
{
return InternalServerError(ex);
}
}
}
}
//Model
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
namespace picture_of_the_day.Models
{
public class Picture
{
public int SequenceNum { get; set; }
public string Date { get; set; }
public string Caption { get; set; }
public bool Active { get; set; }
public DateTime DisplayDate { get; set; }
public string FileName { get; set; }
public Picture(string picDate)
{
using (var sqlConn = Database.GetConnection())
{
using (SqlCommand command = new SqlCommand("insight_sel_pic_day", sqlConn))
{
command.CommandType = System.Data.CommandType.StoredProcedure;
//add parameters
command.Parameters.Add("@INpic_date", SqlDbType.VarChar).Value = picDate;
// execute stored procedure
sqlConn.Open();
using (SqlDataReader rdr = command.ExecuteReader())
{
// check for rows
if (rdr.HasRows)
{
rdr.Read();
Active = true;
Caption = rdr["caption"].ToString().Trim();
Date = picDate;
FileName = picDate;
}
}
}
}
}
}
}