问题标签 [shared-project]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2663 浏览

visual-studio-2013 - 与 Visual Studio 2013 的 RC 更新 2 共享项目

我最近为 Visual Studio 2013 安装了 RC 更新 2。在浏览通用应用程序的模板时,我发现了*******.Shared一个扩展名为.shproj.

在网上浏览一些资料时,我发现它是一个共享代码和文件的项目模板,我认为这很酷。但是当我开始研究它时,我遇到了障碍。如何添加对该项目的引用?有没有人解决这个问题?

0 投票
0 回答
1082 浏览

visual-studio-2013 - 无法将项目“projectname.Shared”添加到解决方案,因为它已经是解决方案的成员

主题:在 Visual Studio 2013 中将共享(通用)库项目添加到 DirectX+XAML 通用应用程序

我创建了一个 VS2013 Direct-X/XAML 通用应用程序。由于它是一个通用应用程序,因此有 3 个项目:

  • Win 8.1 的项目
  • Win Phone 8.1 的一个项目
  • Win 8.1 和 Win Phone 8.1 项目之间共享的代码的“共享节点”。

我还创建了一个 VS2013 静态库(用于通用应用程序)。由于它是一个通用应用程序库,它包含:

  • Win 8.1 的项目
  • Win Phone 8.1 的一个项目
  • Win 8.1 和 Win Phone 8.1 项目之间共享的代码的“共享节点”。

我想将静态库项目添加到 Direct-X/XAML 应用程序能够查看共享库源代码。

由于静态库包含 2 个项目,我必须将这两个项目都添加到应用程序中。我还更新了依赖列表,使应用中的 Win 8.1 项目依赖于 Win 8.1 lib 项目,而 Win Phone 8.1 应用项目依赖于 Win Phone 8.1 lib 项目。

完成上述操作后,我看不到库中的共享节点。我希望能够看到库项目之间共享的源代码。

我该如何解决这个问题?

问题的视觉描述

添加共享项目

0 投票
1 回答
133 浏览

asp.net - 可以使用 Visual Studio“共享项目”在多个 Web 项目之间共享资源吗?

Visual Studio 2013 Update 2 引入了与“通用应用程序”(即 Windows + Windows Phone)一起使用的共享项目的概念,尽管 Xamarin 也使用该机制来共享 iOS 和 Android 应用程序的代码。通过安装共享项目资源管理器Visual Studio 扩展,它也可以独立于通用应用程序使用。

使用 Shared Projects 资源管理器,Shared Projects 能否用于在同一解决方案中的不同 Web 项目之间共享 Javascript 等资源,而不是 .NET 代码?

0 投票
1 回答
437 浏览

c# - 通过 Automation EnvDTE 添加共享项目引用

我需要向项目添加共享项目引用。

我尝试了 ProjectItems 接口中的一些方法,但没有奏效。我这样做是因为共享项目引用列在 Project.ProjectItems 枚举中,名称为“< SharedContent>”

我比较了有和没有共享参考的 csproj 文件。唯一的区别是这样的导入元素:

如何添加这些导入元素?

Obs:“SharedContent”是我的项目名称

更新 1

我还注意到解决方案文件也被修改:

第二行引用添加了我在其中添加共享引用的项目的 guid。

0 投票
1 回答
1535 浏览

visual-studio - 是否可以从另一个共享项目中引用共享项目?

我正在查看 Visual Studio 2013 中的新共享项目功能。这是一个非常不错的功能,但是如何在“更高级别”共享项目中使用“基础”共享项目中的代码?看起来共享项目中缺少引用功能...???

如何构建大型现实世界的商业应用程序而不能在多个项目中分离代码?

更新: 我想我不够清楚:

假设您想为 Windows 平台开发一个通用应用程序,并使用 xamarin 来支持 iOS 和 android。因此,您将特定于平台的代码放入特定于平台的项目中,在共享库中定义接口,并通过依赖注入将特定于平台的代码传递给共享代码,并从特定于平台的项目中引用所有特定于平台的库。

到目前为止,一切都很好...

但是为了保持平台特定代码的小,您需要在共享项目中开发业务逻辑和业务逻辑的基本框架。

现在你有了第二个客户。在这里,您当然想再次重用基础框架并构建一个新的业务和 UI 层。

现在我想在两个项目中使用相同的框架层。

如果无法在共享项目之间进行引用,该怎么做?

(链接文件不是一个可能的选项,因为我的项目中的普通解决方案有大约 1000 个文件或更多,因此您将永远无法跟踪您必须在所有解决方案中链接的所有文件。/ ilMerge 也不是可能 - 它不能合并 WPF 项目,也不适用于 Android 和 iOS ......)

0 投票
2 回答
486 浏览

web-services - 引用共享项目中的某些内容

所以我正在使用 Xamarin 创建一个 Android 应用程序。所有的 android “东西”都将在 Android 项目中,我创建了一个共享项目来容纳业务逻辑,这样我就可以在必须创建一个 IOS 应用程序时使用它。

我已经成功地从 Android 项目中引用了共享项目——到目前为止一切都很好。因此,我的数据库代码位于共享项目中,可供任何平台使用。

我的应用程序需要连接到 Web 服务,所以我想将所有内容都包含在共享项目中,但似乎无法将引用(Web 或其他)添加到共享项目 - 这是正确的吗?当然不能,或者我不能在共享项目中使用 JSON.net 或其他任何需要引用外部 DLL 的东西......?这将导致我在每个平台上多次复制这样的任何代码。

当然我在这里遗漏了一些东西 - 任何谷歌搜索都会返回如何从另一个项目引用共享项目......不是我需要的。

所以问题是,我可以在共享项目中添加对 Web 服务/第 3 方 DLL 的引用吗?如果可以,我该怎么做?

谢谢你的帮助。

0 投票
1 回答
1641 浏览

visual-studio - Xamarin 共享项目缺少 Visual Studio 项目模板

带有更新 4 的 Visual Studio 2013 不显示共享项目模板。我只有 Xamarin 表单项目模板。我今天早上刚刚安装了 Xamarin 的全新更新。根据我到目前为止的发现,这曾经是 VS 更新 2 的问题。关于如何显示共享项目模板的任何想法?

在此处输入图像描述

0 投票
0 回答
781 浏览

android - Android Spotify API 打破 Xamarin 运行时异常

我已经剥离了我的 Xamarin android 应用程序,希望能解决为什么我在一个非常特殊的情况下得到一个空指针异常。它包括两个java绑定项目和一个共享代码项目。

请结帐并运行此解决方案https://github.com/frel/DemoApp

通过查看代码可以更好地理解这个问题。这并不多,我评论了很多。但基本上我正在使用修改版的 JohnnyCrazy Spotify Web Api 从网络上检索 Spotify 用户帐户。现在,如果我在尝试检索帐户之前使用官方 Spotify Android SDK(绑定项目)进行身份验证,运行时会在我的代码之外发出空指针异常,但第二次、第三次或第 N 次尝试调用相同的代码会导致正确的行为. 我在“发送请求”按钮中添加了检索代码。

现在,如果我注释掉身份验证代码并使用打印到应用程序输出的身份验证令牌(请参阅代码注释),我可以在第一次尝试时检索它而不会出现任何异常。

此外,如果我在 RELEASE 模式下运行代码,无论之前调用了什么,它都会在第一次尝试时工作。

编辑:空指针异常似乎起源于 WebClient 类。

在此处输入图像描述

我的猜测是,也许提出 Spotify 登录活动会破坏一些底层运行时代码。我无法理解为什么会这样。我的许可证上没有 VisualStudio 的访问权限,但我怀疑调试器可能有助于解决这种情况。

我希望在这件事上得到任何帮助。如果您对消除最后一个绑定项目警告需要哪些元数据有任何想法,我真的很想听听他们的意见。

谢谢你
真诚的,
弗雷德

0 投票
0 回答
327 浏览

c# - Visual Studio 共享项目中的可本地化字符串

我正在尝试利用共享项目概念在 WPF 项目和 Android (Xamarin.Forms) 之间共享客户端应用程序逻辑。在这两个项目中,我想使用相同的可本地化文本,因此,将资源文件(带有文本)移动到共享项目对我来说是合乎逻辑的。

以下示例来自 WPF 项目,但面临的问题与共享项目有关,而不是 WPF。

在基于 XAML 的视图中的 WPF 项目中,我按如下方式访问字符串值:

该文件Strings.resx及其翻译位于文件夹I18N中,即。它们没有放在项目的根目录中。因此生成public class Strings的被放置到命名空间TestApp.I18N。当 I18N 文件夹直接属于 WPF 项目时,一切正常,但如果我将 I18N 移动到共享项目,WPF 应用程序会崩溃,但异常:

找不到适合指定区域性或中性区域性的任何资源。确保“TestApp.I18N.Strings.resources”在编译时已正确嵌入或链接到程序集 WPF,或者所需的所有附属程序集都是可加载和完全签名的。

如果我使用一些反汇编工具查看已编译的程序集,我可以看到两种编译之间的区别:

  1. 在 I18N 文件夹属于共享项目的编译中,我看到名为的资源TestApp.Strings.resources
  2. 在 I18N 文件夹属于 WPF 项目的编译中,我看到名为的资源TestApp.I18N.Strings.resources

它实际上很好地解释了为什么在第一种情况下应用程序崩溃。并且很清楚可以使用什么解决方法(我可以将Strings.resx其与项目根目录相关联)。但我觉得在共享项目中拥有资源并不是一个好主意,因为缺乏适当的支持。有人可以分享自己在这个方向上的经验吗?为什么编译器对共享项目的资源文件的解释略有不同?

0 投票
4 回答
9996 浏览

c# - 为什么我不能在 Visual Studio 2015 中创建共享项目?

我下载了 Visual Studio Community 2015。我尝试创建一个共享项目,但出现错误:

在此处输入图像描述

来自 Microsoft.Windows.UI.Xaml.CSharp.targets 的内容

我没有名称为 8.1 的文件夹