在ASP.NET Core 5.0中构建Google Analytics包
我想在我的MVC 6应用程序中包含Google Analytics API package。我试图包含所有的依赖或让它安装槽NuGet包管理器。无论哪种情况,当我构建解决方案时,出现以下错误:Error CS0246 The type or namespace name 'Google' could not be found (are you missing a using directive or an assembly reference?) ProjectName.ASP.NET Core 5.0
在ASP.NET Core 5.0中构建Google Analytics包
任何想法我需要包含哪些依赖项以便在ASP.Net Core 5.0中构建?
以下是我在我的project.json
文件:
"dependencies": {
...
"Microsoft.Net.Http": "2.2.28.0",
"Microsoft.Bcl": "1.1.9.0",
"Microsoft.Bcl.Build": "1.0.21.0",
"Microsoft.Bcl.Async": "1.0.168.0",
"Google.Apis.Analytics.v3": "1.9.0.1100"
},
...
"frameworks": {
"aspnet50": {
"dependencies": {
}
},
"aspnetcore50": {
"dependencies": {
"Newtonsoft.Json": "6.0.8.0"
}
}
},
类似问题的一个:Problems with RavenDB.Client reference in asp.net 5.0 project.json
从那里适应我的回答:
的问题是,你引用Google.Apis.Analytics.v3
位于project.json
的*依赖关系节点中。这意味着这些依赖关系适用于Desktop CLR(aspnet50
)和CoreCLR(aspnetcore50
)。
当你建立一个ASPNET 5项目时,所有的配置都是内置的,而不仅仅是“活动”的。大多数情况下肯定Google.Apis.Analytics.v3
只适用于桌面CLR,因此请将其移动到该配置下的依赖关系节点下。
"dependencies": {
....
},
"frameworks": {
"aspnet50": {
"dependencies" : {
"Google.Apis.Analytics.v3": "1.9.0.1100"
}
},
"aspnetcore50": {}
}
那么你可能要么使用一些有条件的区块在你的代码(#if ASPNET50
)或删除CoreCLR一起。 然后,您可能不得不在代码中使用一些条件块(#if ASPNET50)或一起删除CoreCLR。
我终于明白了[Frameworks](https://github.com/aspnet/Home/wiki/Project.json-file#frameworks)部分的文档。 – aredkid 2015-02-10 05:17:55
谢谢你的帮助,但我想知道是否有依赖可以让GA在CoreCLR中编译。 – Alkasai 2015-02-10 16:21:43
这是只有GA作者才能弄清楚的东西:)它不仅仅是不同的依赖关系,还包括代码 – 2015-02-10 16:45:41