小编Joh*_*ers的帖子

将秒转换为(小时:分钟:秒:毫秒)时间的最佳方法是什么?

将秒转换为(小时:分钟:秒:毫秒)时间的最佳方法是什么?

假设我有80秒,.NET中是否有任何专门的类/技术允许我将这些80秒转换为(00h:00m:00s:00ms)格式,比如DateTime或其他东西?

c# datetime

279
推荐指数
6
解决办法
29万
查看次数

.NET HashTable与字典 - 字典能否同样快?

我想弄清楚何时以及为什么要使用Dictionary或HashTable.我在这里做了一些搜索,发现有人在谈论字典的一般优点,我完全赞同,这导致拳击和拆箱优势,以获得轻微的性能提升.

但是我也读过字典并不总是按照它们插入的顺序返回对象,它被排序的东西.作为HashTable的地方.据我了解,这导致HashTable在某些情况下更快.

我的问题是,这些情况可能是什么?我上面的假设我错了吗?你可以用什么情况来选择一个在另一个之上,(是的,最后一个有点含糊不清).

.net c# collections dictionary hashtable

269
推荐指数
7
解决办法
18万
查看次数

尝试中真正发生的事情{return x; } finally {x = null; 声明?

我在另一个问题中看到了这个提示,并想知道是否有人可以向我解释这是如何工作的?

try { return x; } finally { x = null; }
Run Code Online (Sandbox Code Playgroud)

我的意思是,该finally条款真正执行return声明?这段代码的线程不安全吗?你能想到这个try-finally黑客可以做的任何额外的hackery 吗?

.net c# exception-handling

253
推荐指数
4
解决办法
7万
查看次数

如何从WCF服务返回干净的JSON?

我试图从WCF服务返回一些JSON.此服务只是从我的数据库返回一些内容.我可以得到数据.但是,我担心我的JSON格式.目前,返回的JSON格式如下:

{"d":"[{\"Age\":35,\"FirstName\":\"Peyton\",\"LastName\":\"Manning\"},{\"Age\":31,\"FirstName\":\"Drew\",\"LastName\":\"Brees\"},{\"Age\":29,\"FirstName\":\"Tony\",\"LastName\":\"Romo\"}]"} 
Run Code Online (Sandbox Code Playgroud)

实际上,我希望我的JSON格式尽可能干净.我相信(我可能不正确),以干净的JSON表示的相同结果集合应该如下所示:

[{"Age":35,"FirstName":"Peyton","LastName":"Manning"},{"Age":31,"FirstName":"Drew","LastName":"Brees"},{"Age":29,"FirstName":"Tony","LastName":"Romo"}]
Run Code Online (Sandbox Code Playgroud)

我不知道"d"来自哪里.我也不知道为什么要插入转义字符.我的实体如下所示:

[DataContract]
public class Person
{
    [DataMember]
    public string FirstName { get; set; }

    [DataMember]
    public string LastName { get; set; }

    [DataMember]
    public int Age { get; set; }

    public Person(string firstName, string lastName, int age)
    {
        this.FirstName = firstName;
        this.LastName = lastName;
        this.Age = age;
    }
}
Run Code Online (Sandbox Code Playgroud)

负责返回内容的服务定义为:

[ServiceContract(Namespace = "")]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
public class TestService
{
    [OperationContract]
    [WebGet(ResponseFormat = WebMessageFormat.Json)]
    public string GetResults()
    {
        List<Person> results = new List<Person>();
        results.Add(new Person("Peyton", "Manning", …
Run Code Online (Sandbox Code Playgroud)

wcf json

230
推荐指数
4
解决办法
22万
查看次数

如何在ASP.NET中增加最大上传文件大小?

我有一个表单,除了ASP.NET中的文件上传.我需要将最大上传大小增加到4 MB以上.

我在某些地方发现在msdn上引用下面的代码.

[ConfigurationPropertyAttribute("maxRequestLength", DefaultValue = )]
Run Code Online (Sandbox Code Playgroud)

没有一个参考文献真正描述了如何使用它,我尝试了几件事但没有成功.我只想为要求文件上传的某些页面修改此属性.

这是正确的路线吗?我该如何使用它?

.net c# asp.net file-upload

229
推荐指数
9
解决办法
35万
查看次数

在String.Split操作中指定空格的最佳方法

我正在基于空格分割字符串,如下所示:

string myStr = "The quick brown fox jumps over the lazy dog";

char[] whitespace = new char[] { ' ', '\t' };
string[] ssizes = myStr.Split(whitespace);
Run Code Online (Sandbox Code Playgroud)

在我想要执行此操作的代码中定义char []数组是很麻烦的.是否有更有效的方法,不需要创建字符数组(如果在不同的地方复制,容易出错)?

c# string

219
推荐指数
4
解决办法
26万
查看次数

将JavaScript引擎嵌入到.NET中

只是想知道是否有人尝试嵌入并实际将任何js引擎集成到.net环境中.我可以找到并实际使用(经过很多痛苦和努力,因为它已经过时而且还没完成)spidermonkey-dotnet项目.有这方面经验的人吗?发动机如SquirrelFish,V8 ..

并不是说我对Mozilla的Spidermonkey不满意(将它用于核心ASP.NET应用程序中的自定义组件的Rails式miniframework),但我仍然喜欢进一步探索这些选项.命令行解决方案不是我需要的,我不能依赖CLR以外的任何东西,我需要从/到JavaScript/C#对象调用方法.

// c# class
public class A
{
    public string Hello(string msg)
    {
        return msg + " whatewer";
    }
}

// js snippet
var a = new A();
console.log(a.Hello('Call me')); // i have a console.log implemented, don't worry, it's not a client-side code :)
Run Code Online (Sandbox Code Playgroud)

只是为了澄清 - 我不是试图在服务器端javascript中实际编写应用程序本身.它仅用于编写自定义用户子应用程序(可以看作是某种DSL).允许普通人在js中编程比C#更容易(也更安全).

javascript c# spidermonkey

211
推荐指数
10
解决办法
16万
查看次数

C#构造函数链接?(怎么做?)

我知道这应该是一个非常简单的问题,但我一直在努力解决这个概念.我的问题是,你如何在c#中链接构造函数?我是第一个OOP课程,所以我只是在学习.我不明白构造函数链如何工作或如何实现它,甚至为什么它不仅仅是没有链接的构造函数.

我会很感激一些解释的例子.

那么如何将它们联系起来呢?我知道有两个:

public SomeClass this: {0}

public SomeClass
{
    someVariable = 0
} 
Run Code Online (Sandbox Code Playgroud)

但你如何用三,四等做到这一点?

再一次,我知道这是一个初学者的问题,但我很难理解这一点,我不知道为什么.

c# constructor constructor-chaining

210
推荐指数
7
解决办法
13万
查看次数

如何将TimeSpan序列化为XML

我试图将.NET TimeSpan对象序列化为XML,但它无法正常工作.一个快速谷歌建议,虽然TimeSpan是可序列化的,但XmlCustomFormatter它不提供将TimeSpan对象转换为XML或从XML 转换对象的方法.

一种建议的方法是忽略TimeSpan序列化,而是序列化结果TimeSpan.Ticks(并new TimeSpan(ticks)用于反序列化).一个例子如下:

[Serializable]
public class MyClass
{
    // Local Variable
    private TimeSpan m_TimeSinceLastEvent;

    // Public Property - XmlIgnore as it doesn't serialize anyway
    [XmlIgnore]
    public TimeSpan TimeSinceLastEvent
    {
        get { return m_TimeSinceLastEvent; }
        set { m_TimeSinceLastEvent = value; }
    }

    // Pretend property for serialization
    [XmlElement("TimeSinceLastEvent")]
    public long TimeSinceLastEventTicks
    {
        get { return m_TimeSinceLastEvent.Ticks; }
        set { m_TimeSinceLastEvent = new TimeSpan(value); }
    }
} …
Run Code Online (Sandbox Code Playgroud)

c# serialization timespan

200
推荐指数
6
解决办法
5万
查看次数

带有null模型的renderpartial传递错误的类型

我有一个页面:

<%@ Page Inherits="System.Web.Mvc.View<DTOSearchResults>" %>
Run Code Online (Sandbox Code Playgroud)

在其上,以下内容:

<% Html.RenderPartial("TaskList", Model.Tasks); %>
Run Code Online (Sandbox Code Playgroud)

这是DTO对象:

public class DTOSearchResults
{
    public string SearchTerm { get; set; }
    public IEnumerable<Task> Tasks { get; set; }
Run Code Online (Sandbox Code Playgroud)

这是部分:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<IEnumerable<Task>>" %>
Run Code Online (Sandbox Code Playgroud)

当Model.Tasks不为null时,一切正常.但是当它为null时,我得到:

传递到字典中的模型项的类型为'DTOSearchResults',但此字典需要类型为'System.Collections.Generic.IEnumerable`1 [Task]'的模型项.

我认为它一定不知道使用哪个重载,所以我这样做(见下文)是明确的,但我仍然得到同样的问题!

<% Html.RenderPartial("TaskList", (object)Model.Tasks, null); %>
Run Code Online (Sandbox Code Playgroud)

我知道我可以通过检查null,或者甚至不传递null来解决这个问题,但这不是重点.为什么会这样?

asp.net-mvc renderpartial

193
推荐指数
6
解决办法
5万
查看次数