I am working on console application which fetch some data and call the MVC3 Action method and pass the fetched data as a parameter to that action method. But my problem is how console application get know that data pass successfully\MVC action method call correctly and on server mvc application is running or not
here is my code :
public static void Main()
{
// Mvc application object intialization
HomeController object_Mail = new HomeController();
// Mvc action method call
object_Mail.mailgateway(mvcemails); //mvcemails parameter passed to Actionmethod
}
Please guide me...
Thanks, Raj
You cant invoke an MVC action like you have done here, a desktop application and web application are unrelated.. They exist as two distinct entities.. Now if you need to call an mvc action from your desktop application it is like calling any other web end point using your desktop application and you need to create a HTTPRequest..
In your desktop application create a HTTPRequest as follows:
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://"+ <your mvc action endpoint> )
request.Method = "GET";
//specify other request properties
try
{
response = (HttpWebResponse)request.GetResponse();
}
if you want to pass some data to your action i.e action parameters you could build your url as follows:
For Get Request
string url = string.Format(
"http://mysite/somepage?key1={0}&key2={1}",
Uri.EscapeDataString("value1"),
Uri.EscapeDataString("value2"));
and For POST REQUEST
webRequest.Method = "POST";
var data=string.Format("key1={0}&key2={1}",Uri.EscapeDataString("value1"),Uri.EscapeDataString("value2")");
StreamWriter requestWriter = new StreamWriter(webRequest.GetRequestStream());
requestWriter.Write();
requestWriter.Close();
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With