小编Dim*_*imo的帖子

为什么在彼此之后创建的两个任务会生成相同的随机值?

Task.Factory.StartNew(() =>
    {
    new Class1();
    })

Task.Factory.StartNew(() =>
    {
    new Class2();
    })
Run Code Online (Sandbox Code Playgroud)

在class1和class2的构造函数中,我有:

var timeout = new Random().Next(0, 5000);
Debug.Print(timeout.ToString());
Run Code Online (Sandbox Code Playgroud)

随机值'timeout'在两个类中始终相同.我不明白为什么..

如果我在创建任务之间添加一个暂停,那么它就不一样了.

编辑:

我不明白这与" 随机字符串生成器返回相同的字符串 "有什么关系.

他正在该方法中创建随机实例.我在完全不同的任务中调用它,因此它们应该彼此独立.

c# random

36
推荐指数
2
解决办法
3092
查看次数

将dataGridView中的选定行检索为对象

我有一个这样的课:

public partial class AdressBokPerson
    {
        public long Session { get; set; }
        public string Förnamn { get; set; }
        public string Efternamn { get; set; }
        public string Mail { get; set; }
    }
Run Code Online (Sandbox Code Playgroud)

添加到列表中:

private readonly List<AdressBokPerson> _avp = new List<AdressBokPerson>();
Run Code Online (Sandbox Code Playgroud)

通过绑定到dataGridView,如下所示:

dataGridView1.DataSource = _avp;
Run Code Online (Sandbox Code Playgroud)

到现在为止还挺好.

这是我的问题:

当选择dataGridView中的行时,如何找出选择的"哪个"对象.我需要以某种方式检索所选对象AdressBokPerson.

.net c# datagridview winforms

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

MiniProfiler没有出现在asp.net MVC上

我把它添加到我的Global.asax.cs:

protected void Application_BeginRequest()
{
    if (Request.IsLocal)
    {
        MiniProfiler.Start();
    }
}

protected void Application_EndRequest()
{
    MiniProfiler.Stop();
}
Run Code Online (Sandbox Code Playgroud)

我补充道

@MiniProfiler.RenderIncludes()
Run Code Online (Sandbox Code Playgroud)

</body>在_Layout.cshtml 中的标记下方.

在我的控制器中我正在使用:

 public class HomeController : Controller
    {
        public ActionResult Index()
        {    
            var profiler = MiniProfiler.Current; // it's ok if this is null
            using (profiler.Step("Set page title"))
            {
                ViewBag.Title = "Home Page";
            }
            using (profiler.Step("Doing complex stuff"))
            {
                using (profiler.Step("Step A"))
                { // something more interesting here
                    Thread.Sleep(100);
                }
                using (profiler.Step("Step B"))
                { // and here
                    Thread.Sleep(250);
                } …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc profiler mvc-mini-profiler

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

无法在ASP.NET MVC实体框架中将值NULL插入列中

尝试使用此代码时:

var model = new MasterEntities();

var customer = new Customers();
customer.Sessionid = 25641;

model.Customers.Add(customer);
model.SaveChanges();
Run Code Online (Sandbox Code Playgroud)

我明白了:

{"无法将值NULL插入列'Sessionid',表'master.dbo.Column';列不允许空值.INSERT失败.\ r \n语句已终止."}

"Sessionid"列实际上是主键,用[KEY]标记如下:

 public class Customers
    {   
        [Key]
        public long Sessionid { get; set; }
        public long? Pers { get; set; }
    }
Run Code Online (Sandbox Code Playgroud)

因此,根据这个问题,似乎当属性被标记时[KEY],EF忽略了我自己的Sessionid声明,因为它期望数据库分配值.

那我怎么解决这个问题呢?如果我删除[KEY]我得到"entity type has no key defined"例外...

c# asp.net entity-framework

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

无法打开包含文件:'QWebView':没有这样的文件或目录

我已按照以下页面上的说明操作:

http://qt-project.org/wiki/Open_Web_Page_in_QWebView

我在我的pro文件中添加了QT + = webkit并运行了qmake,然后清理所有并再次编译.我还是得到:

错误:C1083:无法打开包含文件:'QWebView':没有这样的文件或目录

当我添加#include <QWebView>头和cpp文件.有任何想法吗?

c++ qt qtwebkit

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

什么是ASP.NET MVC中的data-cip-id以及如何删除它?

一直试图找到有关这方面的信息,没有运气.

在ASP.NET MVC中使用html帮助程序生成文本框时:

@Html.TextBox("Test")
Run Code Online (Sandbox Code Playgroud)

我总是得到

 <input id="Test" name="Test" type="text" value="" data-cip-id="Test">
Run Code Online (Sandbox Code Playgroud)

这个丑陋的数据cip-id是什么?它有什么功能,如何删除它?

c# asp.net-mvc

13
推荐指数
1
解决办法
2273
查看次数

在没有@ HTML.Beginform的情况下发布表单并在asp.net MVC中使用Jquery(ajax)

如何在不使用@HTML.Beginform和使用JQuery Ajax的情况下填写表单?现在我试过了:

    var postData = { form1: username, form2: password };

    $.ajax({
        type: "POST",
        url: '/Controller/Method',
        data: postData,
        dataType: "json",
        traditional: true
    });
Run Code Online (Sandbox Code Playgroud)

但发布后,浏览器无法导航到正确的视图.我当然在控制器中正确返回View().使用Fiddler我看到它被正确发布并且响应也是正确的...

是否必须使用@HTML.Beginform或者我可以使用Ajax吗?

c# asp.net-mvc jquery

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

property.GetValue(this,null)导致"对象与目标类型不匹配"

我有这样的数据库类

class Database
    {
        [Browsable(false)]
        public long Session { get; set; }
        public string Förnamn { get; set; }
        public string Efternamn { get; set; }
        public string Mail { get; set; }   
    }
Run Code Online (Sandbox Code Playgroud)

DataGridView使用BindingList作为它的数据源,我将gridview的选定行检索为数据库类实例,如下所示:

Database currentObject = (Database)dataGridView1.CurrentRow.DataBoundItem;
Run Code Online (Sandbox Code Playgroud)

现在我试图循环遍历"currentObject"的属性,如下所示:

foreach (PropertyInfo property in currentObject.GetType().GetProperties())
        {         
            var name = property.Name;
            object obj = property.GetValue(this, null);    
        }
Run Code Online (Sandbox Code Playgroud)

但在线object obj = property.GetValue(this, null);它崩溃了,我得到:

mscorlib.dll中出现未处理的"System.Reflection.TargetException"类型异常

附加信息:对象与目标类型不匹配.

我在这里错过了什么?

c# sql database winforms

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

更改fiddler代理服务器的用户名和密码

我正在使用Fiddler设置代理服务器,但在规则菜单下启用"需要代理授权"时,用户名/密码始终为1.如何更改用户名/密码?

我尝试更改oSession ["X-AutoAuth"] ="username:password"; 但它不会更改所需的代理凭据.

在关于此的文档中找不到任何内容......

passwords proxy fiddler username

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

为什么我的SignalR应用程序有时会断开连接

我正在连接到这样的signalR集线器:

    $scope.starthubD = function() {
        $.connection.hub.start().done(function () {
            $.connection.HubName.server.method(sessionId);
        });
    };
Run Code Online (Sandbox Code Playgroud)

我收到这样的消息:

    $.connection.HubName.client.method= function(msg) {
        $scope.cars.push(msg);
    };
Run Code Online (Sandbox Code Playgroud)

通过集线器,我开始10-12个长期运行的线程:

public class ProcessHub: Hub
{
        IHubContext hubContext = GlobalHost.ConnectionManager.GetHubContext<ProcessHub>();

        new Thread(() => new Process(connectionId, hubContext)).Start();
        new Thread(() => new Process2(connectionId, hubContext)).Start();
        new Thread(() => new Process3(connectionId, hubContext)).Start();
}
Run Code Online (Sandbox Code Playgroud)

线程本身使用以下方法直接向客户端报告:

hubContext.Clients.Client(connectionId).report(data);
Run Code Online (Sandbox Code Playgroud)

我遇到的问题是它大部分时间都有效,但有时我会断开此消息:

http://domain.se/signalr/connect?transport=serverSentEvents&connectionTok ... weVsQoXvUzH&connectionData =%5B%7B%22name%22%3A%22carcompare%22%7D%5D&tid = 7 net :: ERR_CONNECTION_

c# asp.net-mvc signalr

5
推荐指数
1
解决办法
1153
查看次数

SignalR集线器是否自主?

我正在开发一个项目,其中SignalR集线器启动了12个短期运行的线程(新的Thread()).每个线程在完成时使用websockets向客户端报告.线程不是CPU密集型的,而是从其他Web服务获取一些信息.

现在我的困境是这样的:我应该创建一个作为服务运行的独立自托管signalR集线器应用程序,还是应该在我的asp.net MVC项目中包含集线器?

明智的表现是什么?

c# asp.net-mvc multithreading signalr

5
推荐指数
1
解决办法
812
查看次数

根据AngularJs中的响应设置值

假设我有以下代码:

<tr ng-repeat="transaction in $data">
    <td data-title="'Id'" sortable="id">{{transaction.id}}</td>
    <td data-title="'Player'" sortable="playerId">{{transaction.playerId}}</td>
    <td data-title="'Type'" sortable="type">{{transaction.type}}</td>
    <td data-title="'Date'" sortable="date">{{transaction.date | amDateFormat:'lll'}}</td>
    <td data-title="'Provider'" sortable="provider">{{transaction.paymentMethod}}</td>
    <td data-title="'Amount'" sortable="amount">{{transaction.amount | currency:'€ '}}</td>
    <td data-title="'Code'" sortable="code">{{transaction.code}}</td>
    <td data-title="'Status'" sortable="status">{{transaction.status}}</td>
</tr>
Run Code Online (Sandbox Code Playgroud)

对于"transaction.code",来自服务器的响应是"SRV_DPS".如何在浏览器中将其显示为"存款"?

rest angularjs

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