我想从我的一些现有对象中自动生成一些DTO,我想知道是否已经存在Resharper,DevExpress或VSX开源使用,我需要一个工具来查看我的代码并让我选择我想要的属性包含在我的DTO中,然后基于该类生成一个类...
例如,如果我在标头或 cpp 中更改函数中的签名,我希望它在另一个函数中自动更改。如果我在任何一个中添加一个新函数,它都应该出现在两个中。如果我删除一个函数,它可能会注释掉另一个函数。手动复制自己的更改似乎很愚蠢。
有些人在回答类似问题时提到了http://www.lazycplusplus.com/,但似乎这是一个命令行工具,需要保存然后在特定文件上运行此外部工具。这仍然比我想象的需要更多的手动步骤;我希望在我输入时应用更改。
vsx refactoring header-files automated-refactoring visual-c++
在Visual Studio 2010中,您可以创建的唯一选项是"MenuBar"上"工具"下的命令栏.在某些情况下,我想知道如何将命令栏放在标准栏上,或者在我右键单击项目文件时找到.
例:
Microsoft.VisualStudio.CommandBars.CommandBar menuBarCommandBar =
((Microsoft.VisualStudio.CommandBars.CommandBars)_applicationObject.
CommandBars)["MenuBar"];
Run Code Online (Sandbox Code Playgroud)
默认情况下,它显示"MenuBar",我确信还有其他的,例如"标准".但是我无法找到列表的资源或文档,我想知道是否有人知道在哪里查找这些"名称"的列表.
提前谢谢你们.
我已经构建了一个Wpf UserControl库,它包含一大组程序集,甚至引用了另外两个类库和几个合并的resourceDictionaries.它构建没有错误.我构建了一个简单的VSX包并引用了Wpf库,然后尝试运行它.在解析页面时,它只能找到我的xaml UserControl页面上引用的部分程序集.它为我提供了每个不可绑定程序集的融合日志中的错误消息.如果我删除"坏"程序集,它将继续解析为下一个不可用的程序集.它能够找到我引用的一个类库,但不能找到另一个.它们与不同的课程内容基本相同.
那么,有没有人有任何资源或答案呢?我的其他测试项目甚至包含WCF服务加载没有问题,这对我来说是一个难题.
谢谢,丹尼
===预绑定状态信息===日志:用户= AMRS\dhoneycu日志:DisplayName = System.Windows.Interactivity,PublicKeyToken = 31bf3856ad364e35(部分)警告:为程序集提供了部分绑定信息:WRN:程序集名称: System.Windows.Interactivity,PublicKeyToken = 31bf3856ad364e35 | 域ID:1 WRN:仅提供部分程序集显示名称时发生部分绑定.警告:这可能导致装订器装入错误的装配.警告:建议为程序集提供完全指定的文本标识,即WRN:由简单名称,版本,区域性和公钥标记组成.警告:有关此问题的更多信息和常见解决方案,请参阅白皮书http://go.microsoft.com/fwlink/?LinkId=109270.日志:Appbase = file:/// C:/ Program Files/Microsoft Visual Studio 10.0/Common7/IDE/LOG:Initial PrivatePath = NULL
日志:此绑定在默认加载上下文中启动.日志:使用应用程序配置文件:C:\ Program Files\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe.Config日志:使用主机配置文件:日志:使用来自c:\ WINDOWS\Microsoft.NET \的机器配置文件框架\ v4.0.30319\CONFIG\machine.config中.日志:此时策略未应用于引用(私有,自定义,部分或基于位置的程序集绑定).日志:尝试下载新的URL文件:/// C:/ Program Files/Microsoft Visual Studio 10.0/Common7/IDE/System.Windows.Interactivity.DLL.日志:尝试下载新的URL文件:/// C:/ Program Files/Microsoft Visual Studio 10.0/Common7/IDE/System.Windows.Interactivity/System.Windows.Interactivity.DLL.日志:尝试下载新的URL文件:/// C:/ Program Files/Microsoft Visual Studio 10.0/Common7/IDE/PublicAssemblies/System.Windows.Interactivity.DLL.日志:尝试下载新的URL文件:/// C:/ Program Files/Microsoft Visual Studio 10.0/Common7/IDE/PublicAssemblies/System.Windows.Interactivity/System.Windows.Interactivity.DLL.日志:尝试下载新的URL文件:/// C:/ Program Files/Microsoft Visual Studio 10.0/Common7/IDE/PrivateAssemblies/System.Windows.Interactivity.DLL.日志:尝试下载新的URL文件:/// C:/ Program Files/Microsoft Visual Studio 10.0/Common7/IDE/PrivateAssemblies/System.Windows.Interactivity/System.Windows.Interactivity.DLL.日志:尝试下载新的URL文件:/// C:/ Program Files/Microsoft Visual …
假设我有一个或多个项目的解决方案,我刚刚使用以下方法启动了构建:
_dte.Solution.SolutionBuild.Build(true); // EnvDTE.DTE
Run Code Online (Sandbox Code Playgroud)
如何获取刚刚构建的每个项目的输出路径?例如...
c:\ MySolution\Project1\Bin\x86\Release\
c:\ MySolution\Project2\Bin\Debug
在Solution-> Properties下,我可以设置多个启动项目:

我知道我可以获得标有"开始"的项目列表(通过使用EnvDTE:)solution.SolutionBuild.StartupProjects,但是如何获得其操作为"Start without debugging"的项目列表?它们不会出现在列表中.
如何从Visual Studio Extension将自定义MsBuild属性传递给Visual Studio构建引擎(我想编写自定义加载项)?就像Visual Studio的本身传递的属性,如$(Configuration)和$(Platform),我想附加到构建过程,并通过我自己的财产(例如$(MyCustomProperty) = "foobar").我知道可以使用MsBuild命令行(/p:Property)完成它,但我想从扩展中完成它.
这是我想要的一个例子:visual studio工具栏上的一个文本框,用户可以输入一些文本 - 一个值,我想传递给构建引擎.
然后在.csproj中:
<PropertyGroup>
<MyCustomProperty Condition=" '$(MyCustomProperty)' == '' ">DefaultValue</MyCustomProperty>
</PropertyGroup>
<Target Name="AfterBuild" Condition=" '$(MyCustomProperty)' = 'DoAfterBuild' ">
...
</Target>
Run Code Online (Sandbox Code Playgroud)
因此,AfterBuild只有当用户输入DoAfterBuild我的扩展程序的文本框时,目标才会被激活
我想使用Roslyn来分析Razor View中一块C#代码的上下文中的语义信息.
有没有办法(在Visual Studio 2015中,甚至在单元测试中)获得SemanticModel代表此代码的代码?
我已经使用VSCT文件中的此设置为Visual Studio 2015的VSIX包中的工具栏定义了动态组合:
<Combo guid="cmdExplorerToolbarSearchGUID" id="cmdExplorerToolbarSearchID" priority="0x0" type="DynamicCombo"
defaultWidth="50" idCommandList="cmdExplorerToolbarSearchGetListID">
<Parent guid="grpExplorerToolbar3GUID" id="grpExplorerToolbar3ID" />
<CommandFlag>DynamicVisibility</CommandFlag>
<CommandFlag>IconAndText</CommandFlag>
<CommandFlag>StretchHorizontally</CommandFlag>
<Strings>
<CanonicalName>cmdExplorerToolbarSearch</CanonicalName>
<ButtonText>Search</ButtonText>
<ToolTipText>Search elements in the model explorer</ToolTipText>
</Strings>
</Combo>
</Combos>
Run Code Online (Sandbox Code Playgroud)
相应的DynamicStatusMenuCommand实例定义如下:
command = new DynamicStatusMenuCommand(
new EventHandler(this.OnPopUpMenuDisplayAction),
new EventHandler(this.OnCmdExplorerToolbarSearchSelected),
new CommandID(CmdExplorerToolbarSearchGUID, CmdExplorerToolbarSearchID));
commands.Add(command);
command = new DynamicStatusMenuCommand(
new EventHandler(this.OnPopUpMenuDisplayAction),
new EventHandler(this.OnCmdExplorerToolbarSearchGetList),
new CommandID(CmdExplorerToolbarSearchGUID, CmdExplorerToolbarSearchGetListID));
commands.Add(command);
Run Code Online (Sandbox Code Playgroud)
最后OnCmdExplorerToolbarSearchSelected像这样的事件处理程序:
private void OnCmdExplorerToolbarSearchSelected(object sender, EventArgs e)
{
// Process the event arguments
OleMenuCmdEventArgs args = e as OleMenuCmdEventArgs;
if (args != …Run Code Online (Sandbox Code Playgroud) 当我向项目添加Web引用时,它会提供一个默认命名空间:com.wpdevs.myservice.这是我期望它在应用程序中使用的命名空间.
当我将using语句添加到项目时,我必须添加:
using MyProject.com.wpdevs.myservice;
Run Code Online (Sandbox Code Playgroud)
我想找到一种方法来消除必须在using语句中引用项目名称.我现在正在组合的项目注定要转换为VS项目模板,并且在那里有相当奇怪的参考,甚至有一个每个项目的参考,这不是我想在项目中拥有的东西.
vsx ×10
envdte ×2
vsix ×2
build ×1
c# ×1
devexpress ×1
header-files ×1
msbuild ×1
namespaces ×1
refactoring ×1
resharper ×1
roslyn ×1
visual-c++ ×1
vsct ×1
vspackage ×1
wpf ×1