如何使用输入元素提交包含多页表的表单

我在我的Table和Datatables.net上使用bootstrap来集成搜索和分页。 问题是在单击提交按钮后,只有表的当前页面保留在模型上。 如果没有通过Datatables.net集成搜索和分页,只有在使用Datatables.net插件时才会出现错误。 模型: public class SampleViewModel { public List Collection { get; set; } } public class CollectionViewModel { public string Name { get; set; } public int? Value { get; set; } } 控制器: public ActionResult Sample() { SampleViewModel model = new SampleViewModel(); model.Collection = new List(); model.Collection.Add(new CollectionViewModel { Name = “Test1” […]

如何在C#中创建只读对象属性?

如下所示,用户可以更改只读产品字段/属性: class Program { static void Main(string[] args) { var product = Product.Create(“Orange”); var order = Order.Create(product); order.Product.Name = “Banana”; // Main method shouldn’t be able to change any property of product! } } public class Order { public Order(Product product) { this.Product = product; } public readonly Product Product; public static Order Create(Product product) […]

在TFS API中,如何获取给定测试的完整类名?

我手头有一个ITestCaseResult对象,我无法弄清楚如何从中提取Test Class信息。 该对象包含TestCaseTitle属性中的测试方法名称,但我们的代码库中有很多重复的标题,我想了解更多信息。 假设我有类Baz和方法ThisIsATestMethod Foo.Bar程序集,我目前只能从标题中访问ThisIsATestMethod信息,但我想获得Foo.Bar.Baz.ThisIsATestMethod 。 如何使用TFS API执行此操作? 这是一些精简代码: var def = buildServer.CreateBuildDetailSpec(teamProject.Name); def.MaxBuildsPerDefinition = 1; def.QueryOrder = BuildQueryOrder.FinishTimeDescending; def.DefinitionSpec.Name = buildDefinition.Name; def.Status = BuildStatus.Failed | BuildStatus.PartiallySucceeded | BuildStatus.Succeeded; var build = buildServer.QueryBuilds(def).Builds.SingleOrDefault(); if (build == null) return; var testRun = tms.GetTeamProject(teamProject.Name).TestRuns.ByBuild(build.Uri).SingleOrDefault(); if (testRun == null) return; foreach (var outcome in new[] { TestOutcome.Error, TestOutcome.Failed, […]

重建用户控件时,用户控件自定义属性会丢失状态

我有一个自定义属性的用户控件,如下所示: [DefaultValue(true)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)] [Description(“Gets or sets whether the \”Remove\” button is visible.”)] public bool ShowRemoveButton { get { return this.removeButton.Visible; } set { this.removeButton.Visible = value; } } 该控件包含一个标准按钮控件。 此属性用于显示或隐藏按钮。 用户控件构建在单独的项目程序集中。 我把它放在一个表格上,我可以设置和取消设置上面的属性,一切似乎都工作得很好。 但是,当重建包含用户控件的项目时,属性值将翻转为“false”,这不是默认值。 在重建控件时,如何防止自定义属性丢失/更改其状态?

如何从XAML中的文本框中获取值?

我正试图从文本框中获取价值来更新我的数据库。 这是我的XAML代码: 现在我想从名为“Amount”的文本框中获取值,因此我可以像这样更新我的数据库: public ICommand UpdateAccount { get { return new RelayCommand(UpdateAccount1); } } public void UpdateAccount1(string name) { Console.WriteLine(name); Account.UpdateAccount(SelectedAcc, *AMOUNT HERE*); } 然后我将它传递到我的数据库中,如下所示: public static void UpdateAccount(Account a, int Amount) { string sql = “UPDATE Accounts SET Saldo=Saldo-@Amount WHERE ID=@ID”; DbParameter par1 = Database.AddParameter(“@Amount”, Amount); DbParameter par2 = Database.AddParameter(“@ID”, a.ID); Database.ModifyData(sql, par1, par2); […]

使用C#在WinRT中获取可用磁盘空间

[DllImport(“kernel32.dll”, SetLastError = true)] static extern bool GetDiskFreeSpaceEx( string lpDirectoryName, out ulong lpFreeBytesAvaliable, out ulong lpTotalNumberOfBytes, out ulong lpTotalNumberOfFreeBytes); // Returns free disk space from directory. public static ulong GetFreeDiskSpace(string directory) { ulong a, b, c; if (GetDiskFreeSpaceEx(directory, out a, out b, out c)) { Debug.WriteLine(a); } return a; } 我正在开发一个Windowsapp store应用。 我打电话时为什么变量包含0: GetFreeDiskSpace(“C:\\”); ? […]

如何让这个LINQ全外连接正常运行?

我正在构建一个监视用户计算机上的目录的WPF应用程序。 该应用程序从受监控目录上传文件,然后将一些信息保存到SQLite数据库中。 业务处理的一部分是不重新处理已上载的文件,并重新上载已上载但自上次上载以来已更改的文件。 我有两个帮助方法,构建并返回一个List ,我使用LINQ – Full Outer Join来加入。 我的问题是,当我使用FileMetaData对象时,代码似乎不起作用。 看起来一切都应该都有效,但我不知道为什么它不起作用。 我通常会尝试在另一个post上发表评论,但我目前没有“Rep”来做这件事。 下面是我构建的示例,如果您在LINQpad中运行它, 则会显示我的问题。 在单击运行按钮之前,请确保将语言设置为“C#程序”。 我应该采取哪些不同的方式让样本与对象一起工作? 万分感谢! void Main() { var dbItems = new List() { new FileMetaData {FilePath = “C:\\Foo.txt”, DbTimestamp = “1” }, new FileMetaData {FilePath = “C:\\FooBar.txt”, DbTimestamp = “3” }, }; var fsItems = new List() { new FileMetaData {FilePath = […]

C#generics委托类型推断

为什么C#编译器不能在指定的示例中将T推断为int? void Main() { int a = 0; Parse(“1”, x => a = x); // Compiler error: // Cannot convert expression type ‘int’ to return type ‘T’ } public void Parse(string x, Func setter) { var parsed = …. setter(parsed); }

此接口是否已存在于标准.NET库中?

我发现自己需要一个简单的通用接口,我写了它,但结果却是世界上最简单的接口。 我想知道它是否已经存在其他名称。 我只是想确保我不会重新发明已经包含在.NET框架中的东西。 interface IReceiver { void Receive(T obj); } 我无法找到.NET附带的“标准”接口的良好列表。 这个界面的结构对任何人来说都很熟悉吗? 我是否重新设计了已经标准化的东西? 编辑:我有一个数据对象和许多对接收数据感兴趣的对象。 对接收数据感兴趣的对象实现接口,因此“路由”列表和映射可以将数据发送给它们。 这个想法是在路由中完全泛化,路由将是数据驱动的。

Plain ArrayList Linq c#2语法(需要转换)

这个问题对我来说纯粹是学术性的,我在这里回答了一个问题。 从具有特定元素值的arraylist中检索对象 这家伙正在使用一个简单的ArrayList ……我知道不是最好的事情……充满了人 class Person { public string Name { get; set; } public string Gender { get; set; } public Person(string name, string gender) { Name = name; Gender = gender; } } personArrayList = new ArrayList(); personArrayList.Add(new Person(“Koen”, “Male”)); personArrayList.Add(new Person(“Sheafra”, “Female”)); 现在他想选择所有女性。 我这样解决这个问题 var females = from Person P in personArrayList […]