小编PaR*_*RaJ的帖子

<pre>和<code> HTML标记有什么区别?

如何做一个<pre>HTML标签不同于<code>HTML标签.

我已经查看了W3Schools页面,看起来它们是一样的.

如果它们之间有什么重大区别?

html html5 html4

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

开始使用protobuf-net

我正在尝试使用protobuf.net.

我从这里下载了最新版本,实现了一个[ProtoContract]类,现在我正在尝试使用文档中ProtoBuf.Serializer.Serialize描述的序列化它.问题是,没有这样的方法.

我该如何写入[ProtoContract]磁盘?

更新 显然,我有错误的版本或类似的东西,但这是我Serialize班级的样子:

我看到protobuf.net Serializer类

c# protobuf-net

32
推荐指数
2
解决办法
4万
查看次数

来自数据库的MVC模型验证

我有一个非常简单的模型,需要从数据库中进行验证

public class UserAddress
{
    public string CityCode {get;set;}
}
Run Code Online (Sandbox Code Playgroud)

CityCode 可以具有仅在我的数据库表中可用的值.

我知道我可以做点什么.

[HttpPost]
public ActionResult Address(UserAddress model)
{
    var connection = ; // create connection
    var cityRepository = new CityRepository(connection);

    if (!cityRepository.IsValidCityCode(model.CityCode))
    {
        // Added Model error
    }
}
Run Code Online (Sandbox Code Playgroud)

这似乎WET就像我必须在很多位置使用这个模型并添加相同的逻辑,每个地方似乎我没有正确使用MVC架构.

那么,从数据库验证模型的最佳模式是什么?

注意: 大多数验证是从数据库中进行单字段查找,其他验证可能包括字段组合.但是现在我对单字段查找验证感到满意,只要它是DRY并且没有使用过多的反射它是可以接受的.

没有客户端验证: 对于在客户端验证方面回答的任何人,我不需要任何此类验证,我的大多数验证都是服务器端的,我需要相同的,请不要回答客户端验证方法.


PS如果有人能给我提示如何从数据库进行基于属性的验证,将会非常有用.

.net c# validation asp.net-mvc asp.net-mvc-4

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

在Console Application中浏览文件夹

我目前必须编写代码以允许我读取文件夹的所有文件并将其写入控制台.下面,我还有了使用浏览器从目录中选择单个文件的代码.我想知道如何使用浏览按钮选择文件夹.

用于检查所有文件的代码

  foreach(var path in Directory.GetFiles(@"C:\Name\Folder\"))
    {
       Console.WriteLine(path); // full path
       Console.WriteLine(System.IO.Path.GetFileName(path)); // file name
    }
Run Code Online (Sandbox Code Playgroud)

代码打开对话框

OpenFileDialog fileSelectPopUp = new OpenFileDialog();
            fileSelectPopUp.Title = "";
            fileSelectPopUp.InitialDirectory = @"c:\";
            fileSelectPopUp.Filter = "All EXCEL FILES (*.xlsx*)|*.xlsx*|All files (*.*)|*.*";
            fileSelectPopUp.FilterIndex = 2;
            fileSelectPopUp.RestoreDirectory = true;
            if (fileSelectPopUp.ShowDialog() == DialogResult.OK)
            {
                textBox1.Text = fileSelectPopUp.FileName;
            }
Run Code Online (Sandbox Code Playgroud)

c# file-upload

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

如何使ObservableCollection线程安全?

System.InvalidOperationException: Collection was modified; enumeration operation may not execute.
Run Code Online (Sandbox Code Playgroud)

我正在添加/删除不在UI线程上的ObservableCollection.

我有一个方法名称EnqueueReport添加到colleciton和DequeueReport从集合中删除.

步骤流程如下: -

  1. 1.call EnqueueReport每当请求新报告时
  2. 每隔几秒调用一个方法来检查是否生成了报告(这有一个foreach循环,用于检查ObservableCollection中所有报告的生成状态)
  3. 如果生成报告,则调用DequeueReport

我在C#库中并不多.有人可以指导我吗?

c# observablecollection thread-safety xamarin

18
推荐指数
4
解决办法
2万
查看次数

多个OfType Linq?

我有一个linq查询,它选择占位符中的所有文本框,并使用结构将它们添加到列表中.我需要扩展此功能以获取DropDownList的selectedvalue我很确定我做错了,因为当我调试方法时,列表计数为0.

我自己的猜测是声明2 OfType<>()是错误的,但我对linq很新,我不知道怎么做.

任何帮助都是极好的!提前致谢.

这是我到目前为止所拥有的:

public struct content
{
    public string name;
    public string memberNo;
    public int points;
    public string carclass;
}

List<content> rows = new List<content>();

protected void LinkButton_Submit_Attendees_Click(object sender, EventArgs e)
{
List<content> rows = PlaceHolder_ForEntries.Controls.OfType<TextBox>().OfType<DropDownList>()
        .Select(txt => new
        {
            Txt = txt,
            Number = new String(txt.ID.SkipWhile(c => !Char.IsDigit(c)).ToArray())
        })
        .GroupBy(x => x.Number)
        .Select(g => new content
        {
            carclass = g.First(x => x.Txt.ID.StartsWith("DropDownlist_CarClass")).Txt.SelectedValue,
            name = g.First(x => x.Txt.ID.StartsWith("TextBox_Name")).Txt.Text,
            memberNo = g.First(x => x.Txt.ID.StartsWith("TextBox_MemberNo")).Txt.Text,
            points = int.Parse(g.First(x => …
Run Code Online (Sandbox Code Playgroud)

c# linq

15
推荐指数
2
解决办法
7963
查看次数

上传速度问题:HttpWebRequest

我正在使用HttpWebRequest将文件上传到某个服务器,现在问题是我有速度问题.

我无法获得与浏览器(Mozilla Firefox)相同的上传速度,我获得的速度是我从浏览器获得的速度的1/5.

这是我的HttpWebRequest对象的设置

//headers is a NameValueCollection type object,
//Method is a struct { GET, POST, HEAD }

        HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uri);
        request.UserAgent = headers["User-Agent"];
        request.KeepAlive = false;
        request.Accept = headers["Accept"];
        request.AllowAutoRedirect = AllowRedirect;
        request.Headers.Add(HttpRequestHeader.AcceptLanguage, "en-US,en;q=0.5");
        request.Method = Method.ToString();
        request.AllowWriteStreamBuffering = false;
        request.ReadWriteTimeout = 60000;
Run Code Online (Sandbox Code Playgroud)

我保持启用的一些全局选项

        ServicePointManager.Expect100Continue = false;
        ServicePointManager.DefaultConnectionLimit = 200;
        ServicePointManager.MaxServicePointIdleTime = 2000;
        ServicePointManager.MaxServicePoints = 1000;
        ServicePointManager.SetTcpKeepAlive(false, 0, 0);
Run Code Online (Sandbox Code Playgroud)

我如何以块发送文件...

            if (PostMethod == PostType.MultiPart && uploadFiles.Count > 0)
            {
                for (int i = 0; i < uploadFiles.Count; …
Run Code Online (Sandbox Code Playgroud)

.net c# upload httpwebrequest

14
推荐指数
1
解决办法
2284
查看次数

为什么返回类型void在.NET中声明为struct?

AFAIK void在编程语言方面毫无意义.那么为什么在.Net框架中它被声明为struct

using System.Runtime.InteropServices;

namespace System
{
  /// <summary>
  /// Specifies a return value type for a method that does not return a value.
  /// </summary>
  /// <filterpriority>2</filterpriority>
  [ComVisible(true)]
  [Serializable]
  [StructLayout(LayoutKind.Sequential, Size = 1)]
  public struct Void
  {
  }
}
Run Code Online (Sandbox Code Playgroud)

.net c# vb.net clr

11
推荐指数
1
解决办法
1110
查看次数

计算重叠日期范围的价格

我有一个名为HotelRate的简单表

HID  |  START_DATE  |   END_DATE    |   PRICE_PER_DAY
--------------------------------------
1        01/1/2015       10/1/2015       100
1        11/1/2015       20/1/2015       75
1        21/1/2015       30/1/2015       110
Run Code Online (Sandbox Code Playgroud)

什么是最简单的方法来计算价格的酒店房间之间是否为总价用户查询5/1/201525/1/2015.

我检查过 :

但这对我来说都没有多大意义.

我已经尝试了几个查询,但这些看起来像是在盲人中击中箭头.有人可以建议我一个简单而优雅的方法吗?


@JamesZ

在运行第一个查询时,我得到了

start_date end_date   duration    price_per_day
---------- ---------- ----------- -------------
2015-01-01 2015-01-10 5           100
2015-01-11 2015-01-20 9           75
2015-01-21 2015-01-30 4           110
Run Code Online (Sandbox Code Playgroud)

对于第一个范围5是可以的,它应该是第二个范围10,第三个是5

如何计算天数:startend日期之间的总夜数,与天差相同

05-Jan-15   06-Jan-15   1 Night
06-Jan-15   07-Jan-15   1 Night
07-Jan-15   08-Jan-15   1 Night
08-Jan-15   09-Jan-15   1 …
Run Code Online (Sandbox Code Playgroud)

sql sql-server

11
推荐指数
1
解决办法
759
查看次数

析构函数的垃圾收集器行为

我有一个简单的类,定义如下。

public class Person
{
    public Person()
    {

    }

    public override string ToString()
    {
        return "I Still Exist!";
    }

    ~Person()
    {
        p = this;

    }
    public static Person p;
}
Run Code Online (Sandbox Code Playgroud)

在主要方法中

    public static void Main(string[] args)
    {
        var x = new Person();
        x = null;

        GC.Collect();
        GC.WaitForPendingFinalizers();
        Console.WriteLine(Person.p == null);

    }
Run Code Online (Sandbox Code Playgroud)

是否应该将垃圾收集器作为Person.p的主要引用,以及何时将调用析构函数?

.net c# garbage-collection

9
推荐指数
1
解决办法
220
查看次数