how to add type information in Json serialization in Angular 7Serializing to JSON in jQueryHow do I format a Microsoft JSON date?How can I pretty-print JSON in a shell script?What is the correct JSON content type?.NET - JSON serialization of enum as stringHow to make a class JSON serializableHow can I pretty-print JSON using JavaScript?How do I turn a C# object into a JSON string in .NET?How do I POST JSON data with Curl from a terminal/commandline to Test Spring REST?Automatic JSON serialization and deserialization of objects in Swift

Terminology about G- simplicial complexes

Can a Beholder use rays in melee range?

What does it mean when you think without speaking?

How to extract lower and upper bound in numeric format from a confidence interval string?

Four dimension equivalent of a triangle and a tetrahedron, obtained *by translation*?

Is my router's IP address really public?

What is the most important source of natural gas? coal, oil or other?

Why do Russians call their women expensive ("дорогая")?

Why do they consider the Ori false gods?

Windows 10 Programs start without visual Interface

What is a subpixel in Super Mario Bros, and how does it relate to wall clipping?

Can a non-EU citizen travel within schengen zone freely without passport?

Future enhancements for the finite element method

Black-and-white film where monster/alien gets fried

What are the problems in teaching guitar via Skype?

Apparent Ring of Craters on the Moon

Which noble houses were destroyed during the Game of Thrones?

What caused the tendency for conservatives to not support climate change reform?

Ticket sales for Queen at the Live Aid

A Mathematical Discussion: Fill in the Blank

Question about exercise 11.5 in TeXbook

Tic-Tac-Toe for the terminal

Simple linked list with two iterators

What F1 in name of seeds/varieties means?



how to add type information in Json serialization in Angular 7


Serializing to JSON in jQueryHow do I format a Microsoft JSON date?How can I pretty-print JSON in a shell script?What is the correct JSON content type?.NET - JSON serialization of enum as stringHow to make a class JSON serializableHow can I pretty-print JSON using JavaScript?How do I turn a C# object into a JSON string in .NET?How do I POST JSON data with Curl from a terminal/commandline to Test Spring REST?Automatic JSON serialization and deserialization of objects in Swift






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;








0















how to add type information in Json serialization in Angular 7



Hello everybody, I need to add type information at Json serialization in Angular 7 in order to get this result (adding the line "$type": "Person",):




"$type": "Person",
"id": 8,
"firstName": "Anke",
"lastName": "Winkler",




I need this in order to deserialize in C# with Json.NET and knowing which type to use in case of properties that are typed with an interface and thus may be of different types. Thanks a lot for any advice!










share|improve this question






















  • The same way you add any other property to your JSON?

    – JB Nizet
    Mar 24 at 8:54

















0















how to add type information in Json serialization in Angular 7



Hello everybody, I need to add type information at Json serialization in Angular 7 in order to get this result (adding the line "$type": "Person",):




"$type": "Person",
"id": 8,
"firstName": "Anke",
"lastName": "Winkler",




I need this in order to deserialize in C# with Json.NET and knowing which type to use in case of properties that are typed with an interface and thus may be of different types. Thanks a lot for any advice!










share|improve this question






















  • The same way you add any other property to your JSON?

    – JB Nizet
    Mar 24 at 8:54













0












0








0








how to add type information in Json serialization in Angular 7



Hello everybody, I need to add type information at Json serialization in Angular 7 in order to get this result (adding the line "$type": "Person",):




"$type": "Person",
"id": 8,
"firstName": "Anke",
"lastName": "Winkler",




I need this in order to deserialize in C# with Json.NET and knowing which type to use in case of properties that are typed with an interface and thus may be of different types. Thanks a lot for any advice!










share|improve this question














how to add type information in Json serialization in Angular 7



Hello everybody, I need to add type information at Json serialization in Angular 7 in order to get this result (adding the line "$type": "Person",):




"$type": "Person",
"id": 8,
"firstName": "Anke",
"lastName": "Winkler",




I need this in order to deserialize in C# with Json.NET and knowing which type to use in case of properties that are typed with an interface and thus may be of different types. Thanks a lot for any advice!







json angular serialization






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Mar 24 at 8:41









FabianusFabianus

638




638












  • The same way you add any other property to your JSON?

    – JB Nizet
    Mar 24 at 8:54

















  • The same way you add any other property to your JSON?

    – JB Nizet
    Mar 24 at 8:54
















The same way you add any other property to your JSON?

– JB Nizet
Mar 24 at 8:54





The same way you add any other property to your JSON?

– JB Nizet
Mar 24 at 8:54












1 Answer
1






active

oldest

votes


















3














It is not much an Angular serialization issue, but more a TypeScript/JavaScript issue.



You can customize your serialization by overriding the toJSON() method in your TypeScript classes.



class User 
public id: number;
public firstName: string;
public lastName: string;
public age: number;

public toJSON(): User
return Object.assign(, this,
$type: 'User'
);




What the toJSON() method will do, is simply create a new object using the current one, and the add the $type property to it. It will be called when you call the JSON.stringify() method. Thus, you don't need to create a $type variable in your class.



Example:



const newUser: User = new User();

newUser.id = 8;
newUser.firstName = "John";
newUser.lastName = "Doe";
newUser.age = 42;

const newUserAsJson: string = JSON.stringify(newUser);

console.log(newUserAsJson);
// Displays:
// firstName: "John", lastName: "Doe", id: 8, age: 42, $type: "User"


Hope it helps.






share|improve this answer























    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%2f55322009%2fhow-to-add-type-information-in-json-serialization-in-angular-7%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









    3














    It is not much an Angular serialization issue, but more a TypeScript/JavaScript issue.



    You can customize your serialization by overriding the toJSON() method in your TypeScript classes.



    class User 
    public id: number;
    public firstName: string;
    public lastName: string;
    public age: number;

    public toJSON(): User
    return Object.assign(, this,
    $type: 'User'
    );




    What the toJSON() method will do, is simply create a new object using the current one, and the add the $type property to it. It will be called when you call the JSON.stringify() method. Thus, you don't need to create a $type variable in your class.



    Example:



    const newUser: User = new User();

    newUser.id = 8;
    newUser.firstName = "John";
    newUser.lastName = "Doe";
    newUser.age = 42;

    const newUserAsJson: string = JSON.stringify(newUser);

    console.log(newUserAsJson);
    // Displays:
    // firstName: "John", lastName: "Doe", id: 8, age: 42, $type: "User"


    Hope it helps.






    share|improve this answer



























      3














      It is not much an Angular serialization issue, but more a TypeScript/JavaScript issue.



      You can customize your serialization by overriding the toJSON() method in your TypeScript classes.



      class User 
      public id: number;
      public firstName: string;
      public lastName: string;
      public age: number;

      public toJSON(): User
      return Object.assign(, this,
      $type: 'User'
      );




      What the toJSON() method will do, is simply create a new object using the current one, and the add the $type property to it. It will be called when you call the JSON.stringify() method. Thus, you don't need to create a $type variable in your class.



      Example:



      const newUser: User = new User();

      newUser.id = 8;
      newUser.firstName = "John";
      newUser.lastName = "Doe";
      newUser.age = 42;

      const newUserAsJson: string = JSON.stringify(newUser);

      console.log(newUserAsJson);
      // Displays:
      // firstName: "John", lastName: "Doe", id: 8, age: 42, $type: "User"


      Hope it helps.






      share|improve this answer

























        3












        3








        3







        It is not much an Angular serialization issue, but more a TypeScript/JavaScript issue.



        You can customize your serialization by overriding the toJSON() method in your TypeScript classes.



        class User 
        public id: number;
        public firstName: string;
        public lastName: string;
        public age: number;

        public toJSON(): User
        return Object.assign(, this,
        $type: 'User'
        );




        What the toJSON() method will do, is simply create a new object using the current one, and the add the $type property to it. It will be called when you call the JSON.stringify() method. Thus, you don't need to create a $type variable in your class.



        Example:



        const newUser: User = new User();

        newUser.id = 8;
        newUser.firstName = "John";
        newUser.lastName = "Doe";
        newUser.age = 42;

        const newUserAsJson: string = JSON.stringify(newUser);

        console.log(newUserAsJson);
        // Displays:
        // firstName: "John", lastName: "Doe", id: 8, age: 42, $type: "User"


        Hope it helps.






        share|improve this answer













        It is not much an Angular serialization issue, but more a TypeScript/JavaScript issue.



        You can customize your serialization by overriding the toJSON() method in your TypeScript classes.



        class User 
        public id: number;
        public firstName: string;
        public lastName: string;
        public age: number;

        public toJSON(): User
        return Object.assign(, this,
        $type: 'User'
        );




        What the toJSON() method will do, is simply create a new object using the current one, and the add the $type property to it. It will be called when you call the JSON.stringify() method. Thus, you don't need to create a $type variable in your class.



        Example:



        const newUser: User = new User();

        newUser.id = 8;
        newUser.firstName = "John";
        newUser.lastName = "Doe";
        newUser.age = 42;

        const newUserAsJson: string = JSON.stringify(newUser);

        console.log(newUserAsJson);
        // Displays:
        // firstName: "John", lastName: "Doe", id: 8, age: 42, $type: "User"


        Hope it helps.







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Mar 24 at 9:08









        EastrallEastrall

        911617




        911617



























            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%2f55322009%2fhow-to-add-type-information-in-json-serialization-in-angular-7%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







            Popular posts from this blog

            Kamusi Yaliyomo Aina za kamusi | Muundo wa kamusi | Faida za kamusi | Dhima ya picha katika kamusi | Marejeo | Tazama pia | Viungo vya nje | UrambazajiKuhusu kamusiGo-SwahiliWiki-KamusiKamusi ya Kiswahili na Kiingerezakuihariri na kuongeza habari

            Swift 4 - func physicsWorld not invoked on collision? The Next CEO of Stack OverflowHow to call Objective-C code from Swift#ifdef replacement in the Swift language@selector() in Swift?#pragma mark in Swift?Swift for loop: for index, element in array?dispatch_after - GCD in Swift?Swift Beta performance: sorting arraysSplit a String into an array in Swift?The use of Swift 3 @objc inference in Swift 4 mode is deprecated?How to optimize UITableViewCell, because my UITableView lags

            Access current req object everywhere in Node.js ExpressWhy are global variables considered bad practice? (node.js)Using req & res across functionsHow do I get the path to the current script with Node.js?What is Node.js' Connect, Express and “middleware”?Node.js w/ express error handling in callbackHow to access the GET parameters after “?” in Express?Modify Node.js req object parametersAccess “app” variable inside of ExpressJS/ConnectJS middleware?Node.js Express app - request objectAngular Http Module considered middleware?Session variables in ExpressJSAdd properties to the req object in expressjs with Typescript