How To Post Json Data To Controller Without a Model in .net core












0















There is a huge data stored in grid that comes from a sql query joined more than ona table. Data type is Json. I filtered data and then want to sent filtered data to controller. But how it can be?
Here is test json data in javascript block:



var jsonData = {
"FirstName": "John",
"LastName": "Doe",
"DoB": "01/01/1970" };


And this is my javascript function:



function submitForm() {
var user = jsonData;

jQuery.ajax({
type: "POST",
url: "@Url.Action("GetJsonData", "Account")",
dataType: "json",
contentType: "application/json; charset=utf-8",
data: JSON.stringify(user),
success: function (data) { alert(data); },
failure: function (errMsg) {
alert(errMsg);
}
});
}


How to get the Json data in controller? Here is my [HttpPost] method:



    [HttpPost]
public IActionResult GetJsonData(String user)
{
//...
return null;
}


user gets null.. Should i change type "String" in method or something else?










share|improve this question


















  • 1





    is this JavaScript inside a Razor view? It needs to be, otherwise the @Url.Action won't work.

    – Wim Ombelets
    Nov 21 '18 at 14:33






  • 1





    No, it's not about Razor View. Because i point a breakpoint for GetJsonData method, and the method works...

    – subudu
    Nov 21 '18 at 14:38
















0















There is a huge data stored in grid that comes from a sql query joined more than ona table. Data type is Json. I filtered data and then want to sent filtered data to controller. But how it can be?
Here is test json data in javascript block:



var jsonData = {
"FirstName": "John",
"LastName": "Doe",
"DoB": "01/01/1970" };


And this is my javascript function:



function submitForm() {
var user = jsonData;

jQuery.ajax({
type: "POST",
url: "@Url.Action("GetJsonData", "Account")",
dataType: "json",
contentType: "application/json; charset=utf-8",
data: JSON.stringify(user),
success: function (data) { alert(data); },
failure: function (errMsg) {
alert(errMsg);
}
});
}


How to get the Json data in controller? Here is my [HttpPost] method:



    [HttpPost]
public IActionResult GetJsonData(String user)
{
//...
return null;
}


user gets null.. Should i change type "String" in method or something else?










share|improve this question


















  • 1





    is this JavaScript inside a Razor view? It needs to be, otherwise the @Url.Action won't work.

    – Wim Ombelets
    Nov 21 '18 at 14:33






  • 1





    No, it's not about Razor View. Because i point a breakpoint for GetJsonData method, and the method works...

    – subudu
    Nov 21 '18 at 14:38














0












0








0








There is a huge data stored in grid that comes from a sql query joined more than ona table. Data type is Json. I filtered data and then want to sent filtered data to controller. But how it can be?
Here is test json data in javascript block:



var jsonData = {
"FirstName": "John",
"LastName": "Doe",
"DoB": "01/01/1970" };


And this is my javascript function:



function submitForm() {
var user = jsonData;

jQuery.ajax({
type: "POST",
url: "@Url.Action("GetJsonData", "Account")",
dataType: "json",
contentType: "application/json; charset=utf-8",
data: JSON.stringify(user),
success: function (data) { alert(data); },
failure: function (errMsg) {
alert(errMsg);
}
});
}


How to get the Json data in controller? Here is my [HttpPost] method:



    [HttpPost]
public IActionResult GetJsonData(String user)
{
//...
return null;
}


user gets null.. Should i change type "String" in method or something else?










share|improve this question














There is a huge data stored in grid that comes from a sql query joined more than ona table. Data type is Json. I filtered data and then want to sent filtered data to controller. But how it can be?
Here is test json data in javascript block:



var jsonData = {
"FirstName": "John",
"LastName": "Doe",
"DoB": "01/01/1970" };


And this is my javascript function:



function submitForm() {
var user = jsonData;

jQuery.ajax({
type: "POST",
url: "@Url.Action("GetJsonData", "Account")",
dataType: "json",
contentType: "application/json; charset=utf-8",
data: JSON.stringify(user),
success: function (data) { alert(data); },
failure: function (errMsg) {
alert(errMsg);
}
});
}


How to get the Json data in controller? Here is my [HttpPost] method:



    [HttpPost]
public IActionResult GetJsonData(String user)
{
//...
return null;
}


user gets null.. Should i change type "String" in method or something else?







javascript jquery json ajax .net-core






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Nov 21 '18 at 14:24









subudusubudu

163211




163211








  • 1





    is this JavaScript inside a Razor view? It needs to be, otherwise the @Url.Action won't work.

    – Wim Ombelets
    Nov 21 '18 at 14:33






  • 1





    No, it's not about Razor View. Because i point a breakpoint for GetJsonData method, and the method works...

    – subudu
    Nov 21 '18 at 14:38














  • 1





    is this JavaScript inside a Razor view? It needs to be, otherwise the @Url.Action won't work.

    – Wim Ombelets
    Nov 21 '18 at 14:33






  • 1





    No, it's not about Razor View. Because i point a breakpoint for GetJsonData method, and the method works...

    – subudu
    Nov 21 '18 at 14:38








1




1





is this JavaScript inside a Razor view? It needs to be, otherwise the @Url.Action won't work.

– Wim Ombelets
Nov 21 '18 at 14:33





is this JavaScript inside a Razor view? It needs to be, otherwise the @Url.Action won't work.

– Wim Ombelets
Nov 21 '18 at 14:33




1




1





No, it's not about Razor View. Because i point a breakpoint for GetJsonData method, and the method works...

– subudu
Nov 21 '18 at 14:38





No, it's not about Razor View. Because i point a breakpoint for GetJsonData method, and the method works...

– subudu
Nov 21 '18 at 14:38












1 Answer
1






active

oldest

votes


















1














Since user is a string, you could try to create an object with a property user:



jQuery.ajax({
type: "POST",
url: "@Url.Action("GetJsonData", "Account")",
dataType: "json",
contentType: "application/json; charset=utf-8",
data: {
user: JSON.stringify(user)
},
success: function (data) { alert(data); },
failure: function (errMsg) {
alert(errMsg);
}
});




Or using FormData:



var formData = new FormData();
formData.append('user', JSON.stringify(user));

jQuery.ajax({
type: "POST",
url: "@Url.Action("GetJsonData", "Account")",
contentType: false,
processData: false,
data: formData,
success: function (data) { alert(data); },
failure: function (errMsg) {
alert(errMsg);
}
});





share|improve this answer





















  • 1





    I created an object with a property user but it still returns null...

    – subudu
    Nov 21 '18 at 14:32






  • 1





    @sudu That's because of return null; in the method GetJsonData.

    – Foo
    Nov 21 '18 at 14:33






  • 1





    No, i mean GetJsonData parameter's user returns null

    – subudu
    Nov 21 '18 at 14:36






  • 2





    @sudu Oh, sorry. I've updated the second way, you can try again. I've removed dataType property, and added 2 properties contentType and processData.

    – Foo
    Nov 21 '18 at 14:43








  • 2





    Thanks a lot @Tân Nguyễn, updated way solved my proplem :)

    – subudu
    Nov 21 '18 at 14:46











Your Answer






StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");

StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53414207%2fhow-to-post-json-data-to-controller-without-a-model-in-net-core%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























1 Answer
1






active

oldest

votes








1 Answer
1






active

oldest

votes









active

oldest

votes






active

oldest

votes









1














Since user is a string, you could try to create an object with a property user:



jQuery.ajax({
type: "POST",
url: "@Url.Action("GetJsonData", "Account")",
dataType: "json",
contentType: "application/json; charset=utf-8",
data: {
user: JSON.stringify(user)
},
success: function (data) { alert(data); },
failure: function (errMsg) {
alert(errMsg);
}
});




Or using FormData:



var formData = new FormData();
formData.append('user', JSON.stringify(user));

jQuery.ajax({
type: "POST",
url: "@Url.Action("GetJsonData", "Account")",
contentType: false,
processData: false,
data: formData,
success: function (data) { alert(data); },
failure: function (errMsg) {
alert(errMsg);
}
});





share|improve this answer





















  • 1





    I created an object with a property user but it still returns null...

    – subudu
    Nov 21 '18 at 14:32






  • 1





    @sudu That's because of return null; in the method GetJsonData.

    – Foo
    Nov 21 '18 at 14:33






  • 1





    No, i mean GetJsonData parameter's user returns null

    – subudu
    Nov 21 '18 at 14:36






  • 2





    @sudu Oh, sorry. I've updated the second way, you can try again. I've removed dataType property, and added 2 properties contentType and processData.

    – Foo
    Nov 21 '18 at 14:43








  • 2





    Thanks a lot @Tân Nguyễn, updated way solved my proplem :)

    – subudu
    Nov 21 '18 at 14:46
















1














Since user is a string, you could try to create an object with a property user:



jQuery.ajax({
type: "POST",
url: "@Url.Action("GetJsonData", "Account")",
dataType: "json",
contentType: "application/json; charset=utf-8",
data: {
user: JSON.stringify(user)
},
success: function (data) { alert(data); },
failure: function (errMsg) {
alert(errMsg);
}
});




Or using FormData:



var formData = new FormData();
formData.append('user', JSON.stringify(user));

jQuery.ajax({
type: "POST",
url: "@Url.Action("GetJsonData", "Account")",
contentType: false,
processData: false,
data: formData,
success: function (data) { alert(data); },
failure: function (errMsg) {
alert(errMsg);
}
});





share|improve this answer





















  • 1





    I created an object with a property user but it still returns null...

    – subudu
    Nov 21 '18 at 14:32






  • 1





    @sudu That's because of return null; in the method GetJsonData.

    – Foo
    Nov 21 '18 at 14:33






  • 1





    No, i mean GetJsonData parameter's user returns null

    – subudu
    Nov 21 '18 at 14:36






  • 2





    @sudu Oh, sorry. I've updated the second way, you can try again. I've removed dataType property, and added 2 properties contentType and processData.

    – Foo
    Nov 21 '18 at 14:43








  • 2





    Thanks a lot @Tân Nguyễn, updated way solved my proplem :)

    – subudu
    Nov 21 '18 at 14:46














1












1








1







Since user is a string, you could try to create an object with a property user:



jQuery.ajax({
type: "POST",
url: "@Url.Action("GetJsonData", "Account")",
dataType: "json",
contentType: "application/json; charset=utf-8",
data: {
user: JSON.stringify(user)
},
success: function (data) { alert(data); },
failure: function (errMsg) {
alert(errMsg);
}
});




Or using FormData:



var formData = new FormData();
formData.append('user', JSON.stringify(user));

jQuery.ajax({
type: "POST",
url: "@Url.Action("GetJsonData", "Account")",
contentType: false,
processData: false,
data: formData,
success: function (data) { alert(data); },
failure: function (errMsg) {
alert(errMsg);
}
});





share|improve this answer















Since user is a string, you could try to create an object with a property user:



jQuery.ajax({
type: "POST",
url: "@Url.Action("GetJsonData", "Account")",
dataType: "json",
contentType: "application/json; charset=utf-8",
data: {
user: JSON.stringify(user)
},
success: function (data) { alert(data); },
failure: function (errMsg) {
alert(errMsg);
}
});




Or using FormData:



var formData = new FormData();
formData.append('user', JSON.stringify(user));

jQuery.ajax({
type: "POST",
url: "@Url.Action("GetJsonData", "Account")",
contentType: false,
processData: false,
data: formData,
success: function (data) { alert(data); },
failure: function (errMsg) {
alert(errMsg);
}
});






share|improve this answer














share|improve this answer



share|improve this answer








edited Nov 21 '18 at 14:42

























answered Nov 21 '18 at 14:29









FooFoo

1




1








  • 1





    I created an object with a property user but it still returns null...

    – subudu
    Nov 21 '18 at 14:32






  • 1





    @sudu That's because of return null; in the method GetJsonData.

    – Foo
    Nov 21 '18 at 14:33






  • 1





    No, i mean GetJsonData parameter's user returns null

    – subudu
    Nov 21 '18 at 14:36






  • 2





    @sudu Oh, sorry. I've updated the second way, you can try again. I've removed dataType property, and added 2 properties contentType and processData.

    – Foo
    Nov 21 '18 at 14:43








  • 2





    Thanks a lot @Tân Nguyễn, updated way solved my proplem :)

    – subudu
    Nov 21 '18 at 14:46














  • 1





    I created an object with a property user but it still returns null...

    – subudu
    Nov 21 '18 at 14:32






  • 1





    @sudu That's because of return null; in the method GetJsonData.

    – Foo
    Nov 21 '18 at 14:33






  • 1





    No, i mean GetJsonData parameter's user returns null

    – subudu
    Nov 21 '18 at 14:36






  • 2





    @sudu Oh, sorry. I've updated the second way, you can try again. I've removed dataType property, and added 2 properties contentType and processData.

    – Foo
    Nov 21 '18 at 14:43








  • 2





    Thanks a lot @Tân Nguyễn, updated way solved my proplem :)

    – subudu
    Nov 21 '18 at 14:46








1




1





I created an object with a property user but it still returns null...

– subudu
Nov 21 '18 at 14:32





I created an object with a property user but it still returns null...

– subudu
Nov 21 '18 at 14:32




1




1





@sudu That's because of return null; in the method GetJsonData.

– Foo
Nov 21 '18 at 14:33





@sudu That's because of return null; in the method GetJsonData.

– Foo
Nov 21 '18 at 14:33




1




1





No, i mean GetJsonData parameter's user returns null

– subudu
Nov 21 '18 at 14:36





No, i mean GetJsonData parameter's user returns null

– subudu
Nov 21 '18 at 14:36




2




2





@sudu Oh, sorry. I've updated the second way, you can try again. I've removed dataType property, and added 2 properties contentType and processData.

– Foo
Nov 21 '18 at 14:43







@sudu Oh, sorry. I've updated the second way, you can try again. I've removed dataType property, and added 2 properties contentType and processData.

– Foo
Nov 21 '18 at 14:43






2




2





Thanks a lot @Tân Nguyễn, updated way solved my proplem :)

– subudu
Nov 21 '18 at 14:46





Thanks a lot @Tân Nguyễn, updated way solved my proplem :)

– subudu
Nov 21 '18 at 14:46




















draft saved

draft discarded




















































Thanks for contributing an answer to Stack Overflow!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53414207%2fhow-to-post-json-data-to-controller-without-a-model-in-net-core%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







這個網誌中的熱門文章

Hercules Kyvelos

Tangent Lines Diagram Along Smooth Curve

Yusuf al-Mu'taman ibn Hud