title: Upgrading from .net core 1.1 to .net core 2.0
body: <p>I am upgrading our existing platform from .Net Core 1.1 to .Net Core 2.0.
  I upgraded the framework and Nuget packages associated with it.</p>
  
  <p>My controllers no longer inherit from the Controller class.</p>
  
  <p>However, my project is no longer building and throws cs0012 with message:
  You must add a reference to assembly 'netstandard, Version=2.0.0.0, Culture= neutral, publicKeyToken = cc7b13ffcd2ddd51". </p>
  
  <p>This is my cs.project</p>
  
  <pre><code>&lt;PropertyGroup&gt;   
  &lt;AssemblyTitle&gt;Demand1&lt;/AssemblyTitle&gt;
  &lt;TargetFramework&gt;netcoreapp2.0&lt;/TargetFramework&gt;
  &lt;DebugType&gt;portable&lt;/DebugType&gt;
  &lt;PreserveCompilationContext&gt;true&lt;/PreserveCompilationContext&gt;
  &lt;AssemblyName&gt;OnDemand&lt;/AssemblyName&gt;
  &lt;OutputType&gt;Exe&lt;/OutputType&gt;
  &lt;PackageId&gt;OnDemand&lt;/PackageId&gt;
  &lt;RuntimeFrameworkVersion&gt;1.1.1&lt;/RuntimeFrameworkVersion&gt;
  </code></pre>
  
  <p></p>
  
  <pre><code>  &lt;ItemGroup&gt;
  &lt;PackageReference Include="Microsoft.AspNetCore.Authentication.Cookies" Version="2.0.1" /&gt;
  &lt;PackageReference Include="Microsoft.AspNetCore.Diagnostics" Version="2.0.1" /&gt;
  &lt;PackageReference Include="Microsoft.AspNetCore.Hosting" Version="2.0.1" /&gt;
  &lt;PackageReference Include="Microsoft.AspNetCore.Mvc" Version="2.0.2" /&gt;
  &lt;PackageReference Include="Microsoft.AspNetCore.Rewrite" Version="2.0.1" /&gt;
  &lt;PackageReference Include="Microsoft.AspNetCore.Server.IISIntegration" Version="2.0.1" /&gt;
  &lt;PackageReference Include="Microsoft.AspNetCore.Server.Kestrel" Version="2.0.1" /&gt;
  &lt;PackageReference Include="Microsoft.AspNetCore.StaticFiles" Version="2.0.1" /&gt;
  &lt;PackageReference Include="Microsoft.Extensions.Caching.Memory" Version="2.0.0" /&gt;
  &lt;PackageReference Include="Microsoft.Extensions.Configuration.FileExtensions" Version="2.0.0" /&gt;
  &lt;PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="2.0.0" /&gt;
  &lt;PackageReference Include="Microsoft.Extensions.Logging.Console" Version="2.0.0" /&gt;
  &lt;PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="2.0.0" /&gt;
  &lt;PackageReference Include="Moq" Version="4.7.10" /&gt;
  &lt;PackageReference Include="OctoPack" Version="3.6.1" /&gt;
  &lt;PackageReference Include="Serilog.Extensions.Logging.File" Version="1.0.0" /&gt;
  &lt;PackageReference Include="Microsoft.Extensions.FileProviders.Embedded" Version="2.0.0" /&gt;
  &lt;PackageReference Include="StackifyMiddleware" Version="2.0.3" /&gt;
  </code></pre>
  
  <p></p>
  
  <p>I followed suggestions found here:
  <a href="https://github.com/Microsoft/dotnet/issues/527" rel="nofollow noreferrer">Solution 1</a> and <a href="https://github.com/dotnet/core/issues/860" rel="nofollow noreferrer">Another One</a></p>
  
  <ul>
  <li>Reference Include="netstandard" as a ItemGroup</li>
  <li>PackageReference Update="Microsoft.NETCore.App"
  Version="2.0.0" </li>
  <li>Removed the RuntimeFrameworkVersion </li>
  <li>Updated my vs community to 15.5.7</li>
  </ul>
  
  <p>Could anyone point me to a correct direction please after spending a whole day to try resolving it.
  Also I thought .net core 2 implements .net standard 2.0.0. Please do correct me if I am completely wrong here.</p>