2017-08-31 14 views
0

Azure関数でVS2017(C#)を使用しています。それはうまく動作します。だから私は共通の機能のためのクラスライブラリをセットアップしようとしている。私はMicrosoft.NET.Sdk.Functions(1.0.0)への参照を見つけることができませんでした。参照を追加しようとすると(vs2017、Nugetではインストールされていませんでした)、私はazure csprojからclasslibrary csproj私はクラスライブラリを構築するときクラスライブラリのAzure関数リファレンス

<PackageReference Include="Microsoft.NET.Sdk.Functions" Version="1.0.0" /> 

はそれから、今、私は「エラーMSB4057:ターゲット 『を得る』。プロジェクトに存在しません」RunResolvePublishAssembliesを

どうすれば解決できますか?

答えて

1

私が知る限り、クラスライブラリで空白関数を使用するには、プロジェクトSDKを "Microsoft.NET.Sdk"に設定する必要があります。 RunResolvePublishAssembliesはMicrosoft.NET.Sdkに含まれています。

このよう

<Project Sdk="Microsoft.NET.Sdk"> 

とクラスライブラリのデフォルトのコンパイルファイルを削除します。

<Compile Include="Class1.cs" /> 
<Compile Include="Properties\AssemblyInfo.cs" /> 

「Microsoft.NET.Sdk」には、デフォルトでプロジェクトディレクトリの「コンパイル」項目が含まれているためです。

それはうまくいくでしょう。

csporjは、このようなものです:

<?xml version="1.0" encoding="utf-8"?> 
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" Sdk="Microsoft.NET.Sdk" > 
    <PropertyGroup> 
    <TargetFramework>net461</TargetFramework> 
    </PropertyGroup> 
    <ItemGroup> 
    <Reference Include="System"/> 

    <Reference Include="System.Core"/> 
    <Reference Include="System.Xml.Linq"/> 
    <Reference Include="System.Data.DataSetExtensions"/> 
    <PackageReference Include="Microsoft.NET.Sdk.Functions" Version="1.0.0-alpha3" /> 

    <Reference Include="Microsoft.CSharp"/> 

    <Reference Include="System.Data"/> 

    <Reference Include="System.Net.Http"/> 

    <Reference Include="System.Xml"/> 
    </ItemGroup> 
    <ItemGroup> 

    </ItemGroup> 

</Project> 

これは、紺碧の機能csprojと同じです。ですから、クラスライブラリにAzure関数リファレンスを追加することはお勧めしません。あなたは、1つの紺色関数プロジェクトを直接作成することができます。

+0

ありがとう、TraceWriteログをライブラリに渡したいのですが、その理由は – Robin

+0

私はazureプロジェクトのように設定を変更しました。コンパイルできますが、メインのAzureプロジェクトへの参照としてDLLを追加しても見つかりません。 – Robin

関連する問題