Avatar of Isaac Johnson
Isaac Johnson
Flag for United States of America

asked on 

Embed Javascript in webAPI Controller

I  am using a webapi controller in which I want to use javascript to convert the
current date to mmddyy before passing as a string to the model.

Can I use javascript in the controller and how would I do this?

//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;
                        }
                    }
                }
            }
        }
    }
}

Open in new window

JavaScriptC#

Avatar of undefined
Last Comment
Kelvin McDaniel

8/22/2022 - Mon