catching body content from http request
<p>I am working on web application using web api. The problem I have is regarding catching http request body. This is the function I use in my controller:</p>

<pre><code>        // GET: api/Factories
        public IQueryable&lt;Factory&gt; GetFactories([FromBody] string region)
        {
            ///////// I SET MY BREAKPOINT HERE
            Continents c = Continents.World;

            if (region==null)
            {
                return db.Factories;
            }

            switch (region)
            {
                case "Europe":
                    c = (Continents)0;
                    break;
                case "Asia":
                    c = (Continents)1;
                    break;
                case "Africa":
                    c = (Continents)2;
                    break;
                case "North_America":
                    c = (Continents)3;
                    break;
                case "South_America":
                    c = (Continents)4;
                    break;
                case "Australia":
                    c = (Continents)5;
                    break;
            }

            if (c == Continents.World)
            {
                return db.Factories;
            }
            else
            {
                var result = db.Factories.Where(factory =&gt; factory.region == c);
                return result;
            }
        }
</code></pre>

<p>I set my break point in the line marked in code. My function parametar string is null. So it looks like function never gets appropriate data from request body.
This is the java script function that sends request:</p>

<pre><code>function findFactories(){
        var regionForSearch = $('#continentsDropDown').val();

        // Send an AJAX request
        $.ajax({
            url: uri1,
            method: "GET",
            dataType: "json",
            data: { //THE IMPORTANT PART
                region: regionForSearch
            }
        })
          .done(function (data) {
              // On success, 'data' contains a list of products.
              $.each(data, function (key, item) {
                  $('&lt;li&gt;', { text: formatItem(item) }).appendTo($('#factories'));
              });

              iscrtajMapu();
          });
    }
</code></pre>

<p>In the line in which is written Important is I guess place where there is possible mistake. My question is can anybody see what is the problem here? Is it java script function or is it my c# back end? Also a possible fix or any advice is appritiated. Thanks in advance. </p>