小编ebb*_*ebb的帖子

C# - 相同的存储库,还是拆分?

我有一个名为"Case"的表,因此也有一个名为"Case"的对象.我还有一个名为"CaseReplies"的表,它与"Case"表有多对一的关系 - "CaseReplies"表也有自己的对象名为"CaseReply"

我应该为这两个存储库创建不同的存储库,还是应该在最初专用于"Case"表/对象的存储库下运行?

c# repository repository-pattern

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

ASP.NET MVC - 仅限图像+经过身份验证的用户

有可能以某种方式只允许经过身份验证的用户查看某些图像吗?我正在建立一个网络图库,我不希望未经过身份验证的用户能够看到图像.

asp.net-mvc asp.net-mvc-3

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

多设备架构

我正在尝试为我的多设备项目组成一个"核心".

该项目是关于一个Web应用程序,它通过Facebook登录验证用户,然后公开他们可以做的一系列新操作 - 例如.获取与其facebook id等相关的数据库中的所有记录.

应通过以下设备理解核心:

  • 个人计算机
  • 苹果手机
  • Android的
  • Windows Phone 7

现在你将如何构成核心?

  1. 你会使它成为一个返回JSON的WCF服务吗?

  2. 你会让它成为一堆返回JSON的控制器吗?

  3. 在查询核心时,您如何确保用户是他/她所说的?我应该每次传递facebook生成的accessToken吗?

你可能已经注意到了,我完全不知道如何做到这一点.

提前致谢.

c# asp.net-mvc wcf json mobile-website

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

具有多个托管模块的组装

我了解程序集由 1 个或多个模块和资源文件(如果有)组成。

如果您在 C# 中编译项目,那么编译器只会将代码转换为托管模块,然后将该模块放入程序集。现在我的问题是,什么时候程序集会有 1 个以上的托管模块?

c# clr

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

线程输入队列

什么是“线程输入队列”?我在 MSDN 上多次看到它,并且不再怀疑它是否只是窗口的消息队列,是由他们所指的线程创建的,还是其他东西。

一个例子:

WH_MOUSE_LL 挂钩使您能够监视将要发布到线程输入队列中的鼠标输入事件。

windows winapi

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

查找类和方法的参考

我试图找出使用/引用特定类的所有类和程序集.有没有办法通过C#中的编程找到?

例如,如果在in ,in中Class1调用/引用,我想找到并使用C#编程.Class2Assembly1Class3Assembly2Class2Class3

有没有人可以帮助我?有什么工具可以帮助吗?我想编写一个小程序来从一个程序集中读取类,并找到引用/使用该特定类的类.

简而言之我的问题:如何通过编写C#程序作为代码清理活动的一部分来查找代码库中未使用的类或方法?

.net c# .net-assembly

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

F#中的异步控制器操作

使用C# - ASP.NET MVC 4,我可以定义一个异步控制器动作,如:

public async Task<ActionResult> IndexWorks()
{
    var data = await DownloadAsync("http://stackoverflow.com");
    return Content(data);
}
Run Code Online (Sandbox Code Playgroud)

有没有办法做类似的事情,使用F#?

我知道我可以使用这种AsyncManager方法.我也知道@Tomas Petricek做得很整洁AsyncActionBuilder,但与C#方法相比,感觉就像很多样板.

asp.net-mvc f# asynchronous

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

EF 代码优先 - IsConcurrencyToken()

简单,但对我来说很神秘:为什么StringPropertyConfiguration(和所有其他 PropertyConfiguration)类有 2 个重载IsConcurrencyToken()

首先:

public StringPropertyConfiguration IsConcurrencyToken()

配置要用作乐观并发令牌的属性。

第二个:

public StringPropertyConfiguration IsConcurrencyToken(bool?)

配置是否将属性用作乐观并发令牌。

你为什么要使用一个?在我看来,这两个重载之间根本没有区别(至少在使用它们时没有区别)......

通过使用第一个,您将编写如下内容:

modelBuilder.Entity<Author>()
    .Property(x => x.Name)
    .IsConcurrencyToken();
Run Code Online (Sandbox Code Playgroud)

通过使用第二个你会写:

modelBuilder.Entity<Author>()
    .Property(x => x.Name)
    .IsConcurrencyToken(true/false/null);
Run Code Online (Sandbox Code Playgroud)

我错过了什么吗?

c# entity-framework ef-code-first

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

.NET BackGroundWorker - InvalidOperationException:跨线程操作无效

我有一个用.NET Winforms编码的项目.我需要实现数据挖掘操​​作,将文本打印到TextBox并更新进度.

我尝试使用BackgroundWorker来做,但它抛出一个InvalidOperationException(跨线程操作无效:控件'xxxxx'从一个线程访问,而不是它创建的线程)

为了缩小问题的潜在原因,我开始了一个新项目,包括以下内容:按钮 - 启动BackgroundWorker标签 - 打印文本.和ProgressBar.

但是,结果是一样的.我搜索了SOF,并被告知要使用代表,但我不熟悉它.

这是抛出错误的代码示例:

using System;
using System.Collections.Generic;
using System.ComponentModel;

namespace TestProject
{
    public partial class Form1 : Form
    {
        private readonly BackgroundWorker _bw = new BackgroundWorker();

        public Form1()
        {
            InitializeComponent();
            _bw.DoWork += RosterWork;
            _bw.ProgressChanged += BwProgressChanged;
            _bw.RunWorkerCompleted += BwRunWorkerCompleted;
            _bw.WorkerReportsProgress = true;
            _bw.WorkerSupportsCancellation = false;
        }

        private void RosterWork(object sender, DoWorkEventArgs doWorkEventArgs)
        {
            for (int i = 0; i < 1000; i++)
            {
                label1.Text = i.ToString();
                _bw.ReportProgress(Convert.ToInt32((i * (100 / 1000)))); …
Run Code Online (Sandbox Code Playgroud)

c# multithreading winforms

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

使用它登录功能或功能?

它是最好的(我知道没有银弹,但通过使用一个可能有一些优势) - 登录调用函数,或调用它的函数?

例子:

方法1


module MongoDb =
   let tryGetServer connectionString =
      try
         let server = new MongoClient(connectionString).GetServer()
         server.Ping()
         Some server
      with _ -> None
Run Code Online (Sandbox Code Playgroud)

用法:

match MongoDb.tryGetServer Config.connectionString with
| None ->
    logger.Information "Unable to connect to the database server."
    // ... code ...
| Some srv ->
    logger.Information "Successfully connected to the database server."
    // ... code ...
Run Code Online (Sandbox Code Playgroud)

方法2


module MongoDb =
    let tryGetServer connectionString =
        try
            let server = new MongoClient(connectionString).GetServer()
            server.Ping()
            Some server
        with …
Run Code Online (Sandbox Code Playgroud)

f#

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