小编JD.*_*JD.的帖子

在SQL Server中更改列varchar(255)nvarchar

我使用的是SQL Server 2008 express,我们的一些列定义为varchar(255).我应该将这些列转换为NvarChar(255)还是nvarchar(max)?

我问的原因是我读到unodeode字符的nvarchar(255)实际上会存储1/2个字符数(因为unicode字符是2个字节)而255个varchar()会允许我存储255个字符(或者它是偏移量为255 - 2).

使用nvarchar(max)会有任何性能命中吗?

JDS

sql-server

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

C#和Javascript中函数的区别?

我正在学习Javascript,我有读取函数是第一类对象,大多数作者都提到函数可以返回函数(它们是对象)并将它们作为参数传递给其他函数.

我相信它还有很多东西,所以C#中的函数和javascript中的函数有什么区别?

在C#am中,我说权限不是对象(没有方法,属性等),即使使用闭包(使用lambda表达式和委托),它们看起来像javascript中的函数对象一样?

我觉得在C#中使用lambda表达式,对于刚接触语言的人来说,区别变得有点模糊.

javascript c#

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

将匿名对象转换为表达式委托

我有一个第三方库,它有以下API:

 Update<TReport>(object updateOnly, Expression<Func<TReport,bool>> where)
Run Code Online (Sandbox Code Playgroud)

我想要做的是调用此方法,但使用匿名对象,如:

Update(new {Name = "test"}, new {Id = id})
Run Code Online (Sandbox Code Playgroud)

是否可以获取第二个匿名对象并将其转换为:

x => x.Id == id.
Run Code Online (Sandbox Code Playgroud)

所以我想要的是将新的{Id = id}转换为一个接受TReport并返回bool的函数?

c#

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

按数据间隔分组

我有一个表,可以在一段时间内存储网络上的带宽使用情况.一列将包含日期时间(主键),另一列将记录带宽.每分钟记录一次数据.我们将在那个时刻记录其他数据.

如果用户以15分钟的间隔(在给定的开始和结束日期的24小时内)请求数据,是否可以使用单个查询来获取我需要的数据,或者我是否必须编写存储过程/光标来执行此操作?然后,用户可以请求5分钟间隔数据等.

我很可能会使用Postgres但是还有其他NOSQL选项会更好吗?

有任何想法吗?

sql postgresql aggregate-functions nosql generate-series

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

使用servicestack捕获异常

我们已经使用ServiceStack基于REST的服务已经有一段时间了,到目前为止它一直很棒.

我们所有的服务都写成:

public class MyRestService : RestService<RestServiceDto>
{
   public override object OnGet(RestServiceDto request)
   {
   }
}
Run Code Online (Sandbox Code Playgroud)

对于每个DTO,我们都有Response等效对象:

public class RestServiceDto 
{
    public ResponseStatus ResponseStatus {get;set;}
}
Run Code Online (Sandbox Code Playgroud)

如果它们被抛出,它会处理所有异常.

我注意到的是,如果在OnGet()OnPost()方法中抛出异常,则http状态描述包含异常类的名称,就好像我扔了一样:

new HttpError(HttpStatus.NotFound, "Some Message");
Run Code Online (Sandbox Code Playgroud)

那么http状态描述包含文本"Some Message".

Since some of the rest services are throwing exceptions and others are throwing new HttpError(), I was wondering if there was a way without changing all my REST services to catch any exceptions and throw a new HttpError()?

So for example, …

servicestack

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

如何访问node.js中的共享网络驱动器

在IIS中,我有一个在应用程序池下运行的Web服务,该应用程序池具有可以访问远程计算机上的驱动器的用户的身份.这样,当Web服务运行并尝试访问远程计算机以读取文件时,我们不会收到任何无效的授权错误.

我现在已经编写了我的第一个Node.js应用程序,但我不确定如何允许访问从应用程序到远程计算机的文件流.我有远程机器的文件的路径名称我想读,但我不确定是否必须传入用户的凭据才能访问该文件,或者我必须在某些凭据下运行Node.js应用程序.

有线索吗?

我知道IIS有节点,但有没有IIS的另一种方法.

更新:

只需在我的用户帐户下运行我的应用程序,此帐户配置为允许访问远程计算机,我可以访问远程计算机而无需更改我的代码(换句话说,只是直接使用Unc路径).但是,如何使用其他用户的凭据(即Node.js中的模拟?)来执行此操作?

iis node.js

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

CQRS使用Redis MQ

在过去的9个月里,我一直致力于CQRS项目(我的第一个),这是一个沉重的学习曲线.我目前在我的写模型中使用JOliver优秀的EventStore,并使用PostGresSql作为我的阅读模型.

我的读写数据库都在同一台机器上,这意味着当对写入数据库进行更改时,在同一个同步调用中,对读取模型进行了更改.

当我学习CQRS时,我觉得这是最好的方式,因为我没有使用消息队列/服务总线框架,如MassTransit,NServiceBus等.

我现在处于大部分架构的位置,以引入消息队列框架.

今天,我遇到了Redis MQ,它是ServiceStack的一部分,因为我们已经在基于Rest的HTTP客户端上使用ServiceStack,这似乎是正确的方法.

我的问题更多的是了解我需要知道什么(或者我是否有任何误解)来实现Redis MQ以及Redis MQ是否是正确的选择?

根据我的理解,我会将Redis MQ用作写入和读取数据库之间的持久队列.一旦我的事件存储记录了我的域中发生的事情,它就会发布到Redis MQ.监听事件/消息服务将从Redis的MQ接收事件/消息,一旦处理它(即更新或写入读取模式),通知/响应追溯到事件店里告诉事件存储的消息已被收听者/订阅者接收和处理.

这听起来不错吗?

Redis MQ架构也会为我提供NSB,RavenDB,MassTransit等提供的所有功能吗?

另外,我将部署到Windows 2008和2003服务器.Redis对于这些操作系统是否稳定?

nservicebus redis cqrs servicestack

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

我可以使用RabbitMQ将大文件分发到多台机器吗?

我在一家数字标牌公司工作,我们向网络上的各种机器发送大量动画/视频.我们过去曾使用ftp将文件从服务器应用程序(我们的内容管理系统)发送到播放内容的计算机.

是否可以在我们发送大文件的环境中使用RabbitMQ(某些视频的大小可能是千兆字节或更大)?大多数文件都非常小,但偶尔我们会发送大型视频.

此外,一些播放器机器将在稍后添加,这意味着排队必须是动态的(即添加播放器,所以现在我们可以向其发送内容).RabbitMQ可以这样配置吗?(从我看到的演示中,您必须在服务器和客户端应用程序启动之前预先创建队列).

我们还可以保护文件的发送,以便发送应用程序在将内容发送到计算机之前必须登录(如登录FTP)?

c# rabbitmq easynetq

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

可以在没有Expressjs的情况下使用Passport.js吗?

我有一个使用nodejs的应用程序,但我不通过ExpressJS服务我的页面.这是一个简单的http nodejs应用程序,我将在某个阶段迁移到nodejs.

但是,我正在玩Passportjs,目前我正在获取'passport.intitalize()中间件未使用'错误,这些错误来自文档提及'connect'和'Express'用法.

我可以在没有Expressjs的情况下使用passportjs吗?

node.js express passport.js

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

aurelia中的自定义属性无效?

我正在学习Aurelia如何工作,我正在尝试使用简单的自定义属性.它所要做的就是根据某些值的变化来改变div文本的颜色.

我有一个div:

    high.bind="changeColor"
Run Code Online (Sandbox Code Playgroud)

在我的属性中我有:

import {inject, customAttribute} from 'aurelia-framework';

@customAttribute('high')
@inject(Element)
export class High {
    constructor(element) {
       this.element = element;
   }

   valueChanged(newValue){
   console.log(newValue);
   if (newValue) {
     this.element.classList.remove('highlight-yellow');
   } else {
     this.element.classList.add('highlight-blue');
  }
}
Run Code Online (Sandbox Code Playgroud)

在我的视图模型中,我有:

import {high} from './highlightattribute'


export class Welcome{
  heading = 'Welcome to the Aurelia Navigation App!';
  firstName = 'John';
  lastName = 'Doe';

 get fullName(){
   return `${this.firstName} ${this.lastName}`;
 }

 get changeColor(){
  if (this.firstName == 'John'){
    return false;  
  }
  return true;
 }  
 welcome(){
   alert(`Welcome, ${this.fullName}!`);
 }
}
Run Code Online (Sandbox Code Playgroud)

当我更改名字时,我没有看到在高自定义属性类中触发valueChanged事件.

aurelia

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