我有一个字符串元组列表,说(P1,P2)
我想知道是否有一个LINQ语句,我可以按P1(按升序)分组,并让该组包含该组的所有P2值(按降序排列).
输入:("A","B"),("A","C"),("D","B")我想得到两组:"A"和"D"(in该组"A"包含"C"和"B"(按此顺序,每次),组"D"包含"B".
这是否可以使用内置的LINQ类,还是我需要迭代组并自行排序?
我有一个ClearCase视图,包含一个文件夹和两个文件.我检查文件夹,删除文件并重新检查文件夹.我留下了一个文件夹和一个文件.有办法让我的文件回来吗?我正在使用标准的Windows工具套件,其中包括cleartool.
我故意滥用Windows窗体应用程序中的消息循环,但我的"只是为了好玩"项目很快就超出了我的理解水平.当任务正在运行时,表单没有响应.是的,还有很多其他问题,但在我的情况下,我故意避免在另一个线程上工作(为了赢得对自己的赌注?)
我有一个在UI线程上运行(很多)短片时间的函数:get_IsComplete()检查任务是否完成; DoWork()循环从0到1000(只是为了让CPU保持温暖).该任务通过调用启动,control.BeginInvoke(new Action(ContinueWith), control);然后它(尾递归)调用自身直到完成,总是在UI线程上运行一小段工作.
public void ContinueWith(Control control)
{
if (!IsComplete)
{
DoWork();
OnNext(control);
control.BeginInvoke(new Action(ContinueWith), control);
}
else
{
OnCompleted(control);
}
}Run Code Online (Sandbox Code Playgroud)
我希望应用程序处理其他事件(鼠标点击,控制重绘,表单移动等)但似乎我的调用比我想要的更优先.
有什么建议?
我想编写自己的网络模拟器,以获得乐趣和个人挑战.我希望学习新的编程技术,以及更多关于网络的知识.以前面向对象的尝试很快就结束了,但我最近下载并使用了微软的Axum(今天发布的新版本)以及他们的并发和协调运行时.由于我来自一个非常OO的主导背景,我以前从未听说过面向Actor的编程; 现在看来我已经把头埋在沙子中,直到Scala和F#给我带来了范例.
我的问题是:a)面向演员的编程比面向对象的编程更适合这项任务,如果是这样的话b)哪里是开始学习演员导向设计的好地方?
this如果我在构造函数中以及在XAML 中将Window 的 DataContext 设置为{Binding RelativeSource={RelativeSource Self}},那么我可以通过在代码隐藏的 Loaded 事件中放置一个断点来看到 DataContext 引用正确的对象实例(即 MainWindow)。但是,Window 的子元素 exampleButton 的 Command 绑定为 null。断言失败。
当我删除 XAML DataContext 设置(并且仅依赖于构造函数设置)时,exampleButton 的命令会正确使用 DataContext。
为什么 XAML 场景中 exampleButton 的 Command 绑定为 null?
主窗口.xaml
<Window x:Class="MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Example"
SizeToContent="WidthAndHeight"
x:Name="mainWindow"
DataContext="{Binding RelativeSource={RelativeSource Self}}"
Loaded="mainWindow_Loaded">
<Button x:Name="exampleButton" Command="{Binding Path=ExampleCommand}" Content="Click"/>
</Window>
Run Code Online (Sandbox Code Playgroud)
MainWindow.xaml.cs
public partial class MainWindow : Window
{
public ICommand ExampleCommand { get; }
public MainWindow()
{
InitializeComponent();
DataContext = this;
ExampleCommand = new DelegateCommand(x …Run Code Online (Sandbox Code Playgroud) 我的问题与其他问题Enforce Global Namespace in XAML不同,因为我没有与封闭命名空间同名的类,但我想不出更合适的标题来区分这两者。
如果我的 XAML 对象的命名空间的任何部分也是另一个命名空间的根,则 Visual Studio 似乎更喜欢我的 XAML 对象的命名空间,这会表现为编译器错误。
这是一个示例,显示了我的命名空间的一部分WpfApp1.System.Views如何与 发生冲突global::System:
<Window x:Class="WpfApp1.System.Views.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
Title="MainWindow" Height="350" Width="525">
<Grid>
<!-- Amazing content goes here -->
</Grid>
</Window>
Run Code Online (Sandbox Code Playgroud)
错误窗格中显示了编译错误,并在以下部分obj/System/Views/MainWindow.g.i.cs下显示了一条波浪状的红色下划线:SystemSystem.Windows.Window
namespace WpfApp1.System.Views {
public partial class MainWindow : System.Windows.Window {
// ...
}
}
Run Code Online (Sandbox Code Playgroud)
显然,我的玩具示例只会阻止我在层次结构中的任何位置拥有System命名空间,但如果我在 XAML 中使用这些第三方组件之一,它也会阻止我拥有任何第三方名称(例如)。DevExpress
global::在不重命名我自己的命名空间(或引用的组件的命名空间)的情况下,我是否可以要求 Visual Studio在其生成的 XAML 代码中使用命名空间?
我从来没有使用过消息传递接口(MPI),但我听说过它的名字,最近才发布了Windows HPC Server.我快速浏览一下亚马逊,看看是否有任何书籍,但它们都是在7年或更久以前的日期.MPI仍然是新应用程序的有效技术选择,还是被其他分布式编程替代品(例如DataSynapse GridServer)取代?
因为它不是一个实现,而是一个标准,学习它的可能性(假设它没有死)将导致更好的分布式编程系统设计?还有什么我应该看的东西吗?
我正在尝试使用免费的Microsoft Visual Web Developer 2010 Express开始使用WCF中的事务.它为我提供了创建"WCF服务应用程序"的选项,但它似乎没有给我很多选项来托管它或配置不同的绑定.如果我F5项目我收到错误:
At least one operation on the 'Service' contract is configured with the TransactionFlowAttribute attribute set to Mandatory but the channel's binding 'BasicHttpBinding' is not configured with a TransactionFlowBindingElement. The TransactionFlowAttribute attribute set to Mandatory cannot be used without a TransactionFlowBindingElement.
我已经尝试在*/services/service/endpointweb.config中添加配置,但似乎只是被忽略了.我还尝试将默认启动应用程序更改为WcfSvcHost.exe,但此选项显示为灰色.我开始怀疑Express版本的一些失败,但我乐观地认为这只是我的笨蛋.有没有我需要学习的技巧,或者会在Visual Studio 2010的完整版本中出现,足以让我跨过这个障碍并进入下一个障碍?
谢谢!
请原谅我,如果以前曾经问过,但我的任何搜索中都没有出现"它".我有两个数据库表Person和Employee建模一个Table-per-Type(例如Employee is-a Person).在我的edmx设计器中,我定义了一个单独的实体Employee,它将每个列映射到它们各自的基础表(例如Name - > Person,Salary - > Employee).
"它"允许我在LINQ表达式中执行这样的操作:
context.Employees.Where("it.Name LIKE 'M%' AND it.Salary > 1234")Run Code Online (Sandbox Code Playgroud)
是否有任何良好的链接解释我如何期望"它"的行为?我认为它不是一个通用的LINQ,它对Entity Framework有点具体.
编辑0:生成的ObjectContext的C#代码如下:
public partial class TestObjectContext : ObjectContext
{
// lots of boilerplate removed for clarity
public ObjectSet<Employee> Employees
{
get
{
if ((_Employees == null))
{
_Employees = base.CreateObjectSet<Employee>("Employees");
}
return _Employees;
}
}
}Run Code Online (Sandbox Code Playgroud) 如果我尝试执行以下代码,我会收到错误
消息207,级别16,状态1,行3无效的列名称"另一个".消息207,级别16,状态1,行4无效的列名称"另一个".
即使两个IF语句的谓词总是评估为false.
CREATE TABLE #Foo (Bar INT)
GO
IF (1=0)
BEGIN
SELECT Another FROM #Foo
END
GO
IF (1=0)
BEGIN
ALTER TABLE #Foo ADD Another INT
SELECT Another FROM #Foo
END
GO
DROP TABLE #FooRun Code Online (Sandbox Code Playgroud)
为了这个例子,这可能过于简化了; 实际上我需要做的是从列中选择值,但仅在列存在时才选择.如果它不存在,我不关心它.在驱使我提出这个问题的问题中,我的谓词就是这样的EXISTS (SELECT * FROM sys.columns WHERE object_id = @ID AND name = @Name).有没有办法实现这一点,而不诉诸我的敌人动态SQL?我知道我的SQL必须始终是格式良好的(即符合语法) - 即使是在一个从未执行过的块中 - 但我也大惊小怪,我也被迫在语义上也正确!
编辑: 虽然我不确定下面的代码增加了上面的代码,但它是问题的另一个例子.在这种情况下,我只想设置绝对值(绝对存在作为列)的值,其值为Maybe(可能存在为列)如果Maybe存在.
IF EXISTS (SELECT * FROM sys.columns WHERE object_id = OBJECT_ID('dbo.TableName', 'U') AND name = 'Maybe')
BEGIN
UPDATE dbo.TableName SET Definitely …Run Code Online (Sandbox Code Playgroud)