小编Jos*_*h E的帖子

对象数据源或代码隐藏:哪个更好?

我知道这是一个可以引起很多争论的主题,但我想知道人们认为使用对象数据源的各种利弊是什么.我现在正在做一个项目,其他程序员的经验和舒适程度都源于经典的ASP,我不确定哪种方式可以
a)快速完成工作b)以最低限度完成工作大惊小怪

我们有一个很好的存储库层,其域对象能够自我验证,因此这些方法可用于执行ODS绑定或代码隐藏绑定.

我出于大多数显而易见的原因不喜欢ODS,但是如果它确实使我不必手动编码分页/排序/选择/插入/更新/删除场景,那么它真的会那么糟糕吗?

.net asp.net data-binding

10
推荐指数
2
解决办法
8060
查看次数

我如何更改此XML字符串以便XDocument.Parse读取它?

在以下代码中,我将对象序列化为XML 字符串.

但是当我尝试使用XDocument.Parse 将此XML字符串读入XDocument时,它会给我这个错误:

根级别的数据无效.

XML是:

<?xml version="1.0" encoding="utf-8"?>
<Customer xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <Id>1</Id>
   <FirstName>Jim</FirstName>
   <LastName>Jones</LastName>
   <ZipCode>23434</ZipCode>
</Customer>
Run Code Online (Sandbox Code Playgroud)

更新:这是十六进制:

![alt text][1] Mod编辑 - 禁用超链接:恶意软件的链接

我该如何处理这个XML,以便它在没有错误的情况下读入XDocument?

using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.IO;
using System.Xml;
using System.Text;
using System.Xml.Linq;

namespace TestSerialize2342
{
    class Program
    {
        static void Main(string[] args)
        {
            List<Customer> customers = Customer.GetCustomers();

            Console.WriteLine("--- Serializing ------------------");

            foreach (var customer in customers)
            {
                Console.WriteLine("Serializing " + customer.GetFullName() + "...");
                string xml = XmlHelpers.SerializeObject<Customer>(customer); …
Run Code Online (Sandbox Code Playgroud)

c# xml xml-serialization linq-to-xml

10
推荐指数
1
解决办法
4735
查看次数

有什么用:=语法?

我是一个从事VB.NET项目的C#开发人员,当我用ByRef参数调用一个函数时,VS一直试图让我使用:= thingie:

While reader.Read()
HydrateBookFromReader(reader:=???)
Run Code Online (Sandbox Code Playgroud)

HydrateBookFromReader函数具有以下签名:

Public Function HydrateBookFromReader(ByRef reader As SqlDataReader) As Book
Run Code Online (Sandbox Code Playgroud)

为什么intellisense一直坚持我使用它:=构造,它的用途是什么?

vb.net syntax language-features function byref

6
推荐指数
1
解决办法
898
查看次数

每个循环都没有集合 - 如何处理它?

当集合什么都没有时我如何处理每个循环,我认为它会跳过但我得到一个例外?

我是否需要将foreach循环包装在if中以检查什么,只有当它不是什么都没有时,然后输入for each循环?

For Each item As String In MyStringList 

    'do something with each item but something myStringList will be nothing?


Next
Run Code Online (Sandbox Code Playgroud)

vb.net

6
推荐指数
1
解决办法
5042
查看次数

Entity Framework 7导航属性为null

我正在创建一个Entity Framework 7项目来替换Entity Framework 6项目.

我有一个属于一个国家的Item实体.然后我有一个linq查询,按国家/地区获取计数.这是查询.

var results = allItems
                .GroupBy(g => g.Country)
                .ToDictionary(s => s.Key, s => s.Count());
Run Code Online (Sandbox Code Playgroud)

这适用于EF6,但抛出了EF 7的异常(例外情况在底部).

这是我的实体:

public class Item
{
    [Key]
    public int id { get; set; }

    [Required]
    public int Countryid { get; set; }

    [ForeignKey("Countryid")]
    public virtual Country Country { get; set; }

}
Run Code Online (Sandbox Code Playgroud)

在EF 7中,使用调试器,我看到Country为null(这是导航属性),但我确实有countryid.在EF 6中,我有一个导航属性的对象.另外,我使用Moq进行单元测试并且它们可以工作(显示nav属性).

我试图添加一个包含但我不应该这样做.我不需要在EF 6或Mock中使用它.

使用include给出:

var results = allItems
                    .Include(i => i.Country)
                    .GroupBy(g => g.Country)
                    .ToDictionary(s => s.Key, s => s.Count());
Run Code Online (Sandbox Code Playgroud)

我犯了同样的错误.

这是错误:

方法'System.Collections.Generic.IEnumerable 2 ' 的类型'System.Func …

entity-framework-core

6
推荐指数
1
解决办法
1113
查看次数

Subversion Windows服务器

我一直在使用TortoiseSVN一段时间用于我的一些项目,但对于托管我总是使用其他一些公司.

现在是时候了,在我工作的公司,我们开始尝试它,我需要一些关于如何安装svn服务器的指针.我来到链接文本链接文本,但我有点不确定哪一个去,或者两者之间是否有任何区别.(我对visualSVN的唯一担心是,如果我是对的,它会包含Apache服务器,这可能会给我们造成问题,因为我们使用服务器我们也会将svn安装到其他目​​的,包括托管网站使用IIS)此外,能够通过Web访问存储库对我们来说并不重要,因为我们主要通过本地网络访问它.

那么任何一个要安装的建议?

干杯

svn version-control

5
推荐指数
2
解决办法
714
查看次数

为什么我们永远不会对已被推送的提交使用rebase

我仍在用VSTS和Git弄湿我的脚.我理解主分支中的更改需要进入功能分支的情况,但这些"提醒"或提示对我来说还没有意义.下面的陈述是什么意思? https://docs.microsoft.com/en-us/vsts/git/tutorial/rebase?tabs=visual-studio

[引用]

永远不要改变已被推送和与他人分享的提交.此规则的唯一例外是当您确定团队中没有人使用提交或您推送的分支时.

经过深入阅读,来自SVN,我想我明白为什么上面的陈述是:

永远不要强迫推动其他人正在工作的分支.只强制推动你独自工作的分支.

这与SVN的情况"类似",其中:(1)你有一个其他人正在处理的本地分支,然后(2)直接在trunk中修复bug,然后(3)将这些更改合并到你的本地分支和(4)在本地分支中提交更新,从而强制在该本地分支上工作的任何其他人获取更新并可能发生合并冲突

git

4
推荐指数
1
解决办法
687
查看次数

jqGrid 3.4中的自定义数据工具提示

我一直在使用优秀的jqGrid插件,效果很好.最近,我被要求为网格实现一些自定义工具提示.现在,文档非常详尽,但它没有解决如何(如果可能的话)完成此任务.

这是我正在寻找的一个例子:

| col A | col B | ...
| 数据| 数据| ...
| (鼠标悬停) - 数据x

我搜索了文档和源代码,了解如何/在何处定义工具提示,但我得到的最接近的是编辑模式下按钮的自定义工具提示.我确实有一个afterInsertRow事件的事件处理程序 - 通过我可以得到rowId等,但我不知道如何在该事件中定义HTML属性.

编辑:澄清一下,我想将单个单元格的title属性设置为特定的数据(我在jqgrid模型中已有)

编辑2:我尝试将以下内容插入到afterInsertRow事件中,没有任何乐趣,其中aData是JSON模型,ExpirationDate是模型名称:

afterInsertRow: function(rowid, aData) {
                grid.setCell(rowid, 'ExpirationDate', '', { title: aData.ExpiredBy });
Run Code Online (Sandbox Code Playgroud)

但是,同一事件处理程序中的以下代码仍可正常工作:

grid.setCell(rowid, 'ExpirationDate', '', { color: 'red' });
Run Code Online (Sandbox Code Playgroud)

编辑3:使用redsquare的优秀suggesstions,我已经确定title属性是在afterInsertRow事件之后的某个时间设置的:我已经逐步完成并确定它是通过评论中概述的任一方法正确设置的,但不幸的是,我尝试更进一步时,获取此位置的源代码不可用,这意味着我无法确切地看到标题的更改位置.

编辑4 :(感谢您的耐心,并帮助我完成这个!)再次采取redsquare关于尝试loadComplete事件的评论,我能够成功获取并修改单元格的属性,但title属性固执地保持不变:

loadComplete: function() {
                var ids = grid.getDataIDs();
                for (var i = 0; i < ids.length; i++) {
                    grid.setCell(ids[i], 'ExpirationDate', '', { title: 'FOO!'});
                }
Run Code Online (Sandbox Code Playgroud)

最终编辑:请参阅下面的答案 - 在redsquare的帮助下,我找到了问题的根本原因.

任何帮助,将不胜感激

jquery jqgrid

3
推荐指数
1
解决办法
2万
查看次数

.Net:有没有更好的方法来检查对象的属性为空或空字符串?

我正在使用FileHelper生成对象的属性.以下是一个属性的示例:

<FieldOptional(), _
 FieldTrim(TrimMode.Both)> _
 <FieldNullValue(GetType(String), " ")> _
Public StoreNo As String
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,StoreNo将具有值或"",其中一个业务策略是检查StoreNo是否为空,如果对象的StoreNo为空或null,则检查是否为空,则该记录将不会创建.

我想在类中创建一个HasValue函数来检查对象中的StoreNo和其他属性,但我觉得它是一个黑客.

Public Function HasValue() As Boolean

    Dim _HasValue As Boolean = True

    If StringHelper.IsNullOrBlank(Me.StoreNo) Then
        _HasValue = False
    End If

    Return _HasValue
End Function
Run Code Online (Sandbox Code Playgroud)

我不认为这种方法是一种理想的解决方案.如果StoreNo被移除或更改为其他内容,该怎么办?检查对象属性的最佳方法是什么?

.net vb.net

0
推荐指数
1
解决办法
2541
查看次数