我有以下场景需要按照CQRS模式实现:
这似乎相当简单,但我的问题是在步骤3和4之间,在步骤3我发送一个ApplyForDecision命令,它将从承保服务得到一个决定,然后一个带有该决定结果的事件被发送到BUS用于读取存储稍后使用它并使用决策结果更新视图表.
问题出在UI上,我如何让用户知道决定正在应用,因为在CQRS中,读取模型没有"直接"更新,我如何让UI显示决策正在进行中并且很快就会'到了吗?
我还需要让用户能够注销并重新登录,因为该决定可能尚未应用,如何让UI显示"待决决策屏幕"?
我正在开发一个WinForms应用程序,它可以生成我的大学生的报告.
我正在使用Crystal Reports,但我不知道如何从文件系统中检索学生照片.
学生照片存储在文件系统中并使用以下命名约定:
C:\Id Maker\"Clgid".jpg
Run Code Online (Sandbox Code Playgroud)
Clgid存储在数据库中的值在哪里.
作为一个例子我Clgid就是2009UCS020其链接到我的照片在文件系统上C:\Id Maker\2009UCS020.jpg
我正在努力寻找如何查找数据库值,Clgid然后从文件系统中检索照片,以便我可以在我的Crystal Report中显示它.
我正在开发一个应用程序,用户可以以类似于Twitter的方式互相关注.
在阅读DDD之后,我了解到我的用户是实体对象 - 我使用他们的唯一ID来引用它们.
当一个用户"跟随"另一个用户(即形成连接)时,该关系存储在多对多表中.它的领域包括FollowerID,TargetID,和Status.每个Follower/Target组合只能有两个记录(一个是Active,另一个是Inactive),所以我可以根据它们的属性安全地识别对象.
所以,我认为我的Connection对象是Value Objects,而不是Entity Objects,但我不确定.你能帮我解决这个问题吗?
我有一个网络服务,应该返回收件箱中的前5个电子邮件,并将它们显示在数据网格中.我把我的数据放到了DataTable第一个.但不断收到错误
这是我的代码,我错过了什么或者说错了吗?
[WebMethod]
public DataTable DisplayMailList(String inMailServer, String inPort, bool inSSlCheck, String inUsername, String inPassword)
{
objClient.Connect(inMailServer, int.Parse(inPort), inSSlCheck);
objClient.Authenticate(inUsername, inPassword);
int count = objClient.GetMessageCount();
DataTable dtMessages = new DataTable(); // Creating datatable.
dtMessages.Columns.Add("MessageNumber");
dtMessages.Columns.Add("From");
dtMessages.Columns.Add("Subject");
dtMessages.Columns.Add("DateSent");
dtMessages.TableName = "dtMessages";
int counter = 0;
for (int i = count; i >= 1; i--)
{
OpenPop.Mime.Message msg = objClient.GetMessage(i);
dtMessages.Rows.Add();
dtMessages.Rows[dtMessages.Rows.Count - 1]["MessageNumber"] = i; //Populateing Datatable
dtMessages.Rows[dtMessages.Rows.Count - 1]["Subject"] = msg.Headers.Subject;
dtMessages.Rows[dtMessages.Rows.Count - 1]["DateSent"] = msg.Headers.DateSent;
counter++;
if …Run Code Online (Sandbox Code Playgroud) 我有一个IIS Web服务器,托管400个Web应用程序(分布在30个应用程序池中).它们都是ASP.NET应用程序和WCF服务端点.服务器有32GB的RAM,通常运行速度很快; 虽然它的内存使用率为95%.工作进程每个需要500MB到1.5GB的RAM.
我还有另一个运行SQL Server的盒子.那个人有充足的自由记忆.
有时,Web Server会开始抛出SQL Timeout异常.一开始每分钟几分钟,迅速增加到每分钟几百分钟; 有效地降低了服务器.此问题会影响所有池中的应用程序.有些请求仍然完成,但大部分请求都没有.发生这种情况时,服务器上的CPU使用率约为30%(这是该盒子上的正常负载).
在发生这种情况时,我们仍然可以使用SQL Server Management Studio(来自IIS服务器)成功(快速)执行请求.
解决方法是重新启动IIS.然后一切都恢复正常,直到下一次.
因为服务器运行时内存非常低,所以我觉得这是原因.但我无法解释低内存和SQL超时异常的突发爆发之间的关系.
任何的想法?
是否可以通过使用获取IIS 7的基本URL Microsoft.Web.Administration.ServerManager?
通常这将是:
http://localhost
Run Code Online (Sandbox Code Playgroud)
但我需要以编程方式获得它.
如果我不能使用ServerManager什么是最好的选择?
正如我发现的那样(在SQL Server书籍中):
\ (Backslash) (Transact-SQL)
为了便于阅读,将长字符串常量分成两行或多行.
和
SELECT Clause (Transact-SQL)...$IDENTITY | $ROWGUID
并 返回将为任何指定的分区函数映射一组分区列值的分区号.
$PARTITION (Transact-SQL)
在T-SQL 中使用\和$特别是SQL Server 的用法.
现在,我有这样的查询:
SELECT \ a, $ b, \11 c, $12 d;
Run Code Online (Sandbox Code Playgroud)
这有一个有效的结果:
a | b | c | d
-----+------+-------+-------
0.00 | 0.00 | 11.00 | 12.00
Run Code Online (Sandbox Code Playgroud)
我觉得有些东西我找不到这个角色.
编辑:
我发现如果货币符号后面有一个数字,SQL Server将删除定义的符号并将值存储为货币数据类型:
我认为,SQL Server中的单一货币符号,它是一个部分-这些部件之间的最后一句翻译+和--公式来0.00,只有在喜欢的部分结束-$,($),(12 + $),($) + 12,$ * …
我的任务是对给定字符串中的相似数字/字符进行分组,例如:字符串的SQL输出4455599应该是44 555 99并且正在使用以下查询:
with t(str)
as (
select '4455599' from dual
)
select listagg(str_grouped ,' ') within group (order by rownum) str_split
from(
select listagg ( str) within group ( order by lvl) str_grouped
from(
select level lvl,
substr(str,level,1) str,
dense_rank() over( order by substr(str,level,1)) drank_no
from t
connect by level <= length(str)
)
group by drank_no
);
Run Code Online (Sandbox Code Playgroud)
但是查询失败了,因为我正在使用以下数据dense_rank.
445559944,期待44 555 99 44但得到4444 555 99.
bb119911,期待bb 11 …
我试图通过考虑下一个和以前的记录来订购特定的查询,但我似乎无法完成它.我想通过数字和字母来订购,但是,例如,如果数字1的最后一个字母等于数字2中的一个字母,我想更改顺序,以便该字母与以下字母匹配记录.
Create script and SQL fiddle demo
create table Parent (
id [bigint] IDENTITY(1,1),
number bigint NOT NULL,
PRIMARY KEY (id)
)
GO
create table Child (
id [bigint] IDENTITY(1,1),
parentId BIGINT,
letter VARCHAR(1) NOT NULL,
PRIMARY KEY (id),
UNIQUE (parentId, Letter),
FOREIGN KEY (parentId) REFERENCES Parent(id)
)
GO
INSERT Parent (number) VALUES (1)
INSERT Parent (number) VALUES (2)
INSERT Parent (number) VALUES (3)
INSERT Child (parentId, letter) VALUES (1, 'A')
INSERT Child (parentId, letter) VALUES (1, 'C')
INSERT Child …Run Code Online (Sandbox Code Playgroud) 如何Ping使用新的C#驱动程序2.0 调用该命令?
在旧的驱动程序中,它是通过Server.Ping()?另外,有没有办法在不运行实际查询的情况下查明服务器是否正在运行/响应?
使用mongoClient.Cluster.Description.State没有帮助,因为即使在mongo服务器开始响应之后它仍然处于断开状态.