ビューでカスタムC#アセンブリが使用されている場合、コンパイラは名前空間への参照を見つけることができません。 アセンブリが参照内で参照され、ビュー内から呼び出されるがビューから呼び出されない場合は、これが機能します。カスタムアセンブリがビューで参照されない
例えば、ビューを作成するために、このU-SQLスクリプトを考える: このクエリを実行する前に、mylocaldbに登録されて使用されるアセンブリ、および任意のスクリプトにアクセスするために利用可能です。スクリプトの実行後
USE DATABASE mylocaldb;
REFERENCE ASSEMBLY [Newtonsoft.Json];
REFERENCE ASSEMBLY [Microsoft.Analytics.Samples.Formats];
USING Newtonsoft.Json;
USING Microsoft.Analytics.Samples.Formats.Json;
DROP VIEW IF EXISTS SearchAccountData;
CREATE VIEW MyView AS
EXTRACT
UserId string,
UserName string
FROM "Data/mydata.json"
USING new Microsoft.Analytics.Samples.Formats.Json.JsonExtractor();
、ビューはmylocaldbデータベース内に作成し、ビューの下に格納されます。別のクエリビューを使用すると
:
USE DATABASE mylocaldb;
USE SCHEMA dbo;
REFERENCE ASSEMBLY [Newtonsoft.Json];
REFERENCE ASSEMBLY [Microsoft.Analytics.Samples.Formats];
USING Newtonsoft.Json;
USING Microsoft.Analytics.Samples.Formats.Json;
@foo= SELECT * FROM MyView;
OUTPUT @foo
TO "/output/foo.csv"
USING Outputters.Csv();
(USE SCHEMA dbo
は、他のスキーマが使用されていない場合と、データベースのデフォルトとして必要ではない):
コンパイラスローエラー:
E_CSC_USER_INVALIDCSHARP: C# error CS0234: The type or namespace name 'Samples' does not exist in the namespace 'Microsoft.Analytics' (are you missing an assembly reference?)
は今、これはU-SQLに付属しているライブラリと競合する可能性がある:Microsoft.Analytics
が、私は別のAを使用して試してみました異なる名前空間を持つssemblyと、私はまだ同じ問題があります。
私はVisualStudioの(ローカル)アカウントを使用してローカルでテストしています。
正解です。私は書類を更新するためのチケットを発行します。あなたが情報をすばやく見つけることができたのを見てうれしいです:) –