我正在使用EF 6.1.0并且正在创建WCF服务.
首先,我创建了一个包含我的实体,Mappers和Context的类库,用于初始化EF.我还创建了一个包含上下文实例化的类,并拥有以下代码:
public IQueryable<[Entity]> GetAll()
{
return context.[Entity].AsQueryable();
}
Run Code Online (Sandbox Code Playgroud)
另一方面,我在同一个项目上创建了一个WCF服务,并在.svc文件中调用函数GetAll(),如下所示:
public List<[Entity]> GetList()
{
[iObject] repository = new [Object](new Context());
return repository.GetAll().ToList();
}
Run Code Online (Sandbox Code Playgroud)
该项目正在建设中.我甚至检查了配置,它位于正确的数据库中.但是,应该创建的数据库和表不存在,并且返回中显示错误"Sequence contains no matching element".
如果这个令人困惑,您可以使用Code First Entity Framework向我指出WCF服务的一些链接.
在 NPM 模块中,我使用打字稿
"devDependencies": {
"@types/node": "^8.0.0",
"typescript": "^2.8.1"
}
Run Code Online (Sandbox Code Playgroud)
我想使用公共方法返回一个私有的可为空参数。请参考下面的例子。我看到的错误是
Property 'string1' has no initializer and is not definitely assigned in the constructor.
Run Code Online (Sandbox Code Playgroud)
如果我在构造函数中分配了一个 undefined 我得到了错误
[ts]
Type 'string | undefined' is not assignable to type 'string'.
Type 'undefined' is not assignable to type 'string'
Run Code Online (Sandbox Code Playgroud)
我应该如何在打字稿中做到这一点,我来自 c# 方面:)
export class HowToDoThis {
private string1?: string;
public constructor() {
//this.string1 = undefined;
}
public add2String1(content: string) {
this.string1 += content;
}
public getString1(): string {
return this.string1;
}
}
Run Code Online (Sandbox Code Playgroud) 我对如何处理异常感到有些困惑.
我有一个后台工作线程,运行一些长时间运行的进程.我的理解是,如果后台工作线程发生异常,代码仍将以RunWorkerCompleted方法结束.
void bgWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
{
if (e.Error != null)
throw e.Error;
Run Code Online (Sandbox Code Playgroud)
如果是这种情况,那么在bgWorker.RunWorkerAsync()周围放置一个try catch块是有意义的.打电话,我猜不是吗?
我想重新抛出RunWorkerCompleted方法中捕获的异常,如何在不丢失堆栈跟踪的情况下执行此操作 - 我上面的内容是否正确?我读过你,当你重新抛出异常时,你应该只使用"抛出"?
对于下面给定的模式,是否可以确保至少有一个属性包含一个值(即minLength为1):
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"fundRaiseId": {
"type": "string"
},
"productTypeId": {
"type": "string"
},
"businessLineId": {
"type": "string"
}
}
}
Run Code Online (Sandbox Code Playgroud)
所以这会通过验证:
{
"fundRaiseId": "x"
}
Run Code Online (Sandbox Code Playgroud)
这将失败,因为没有值存在:
{
"fundRaiseId": "",
"productTypeId": "",
"businessLineId": ""
}
Run Code Online (Sandbox Code Playgroud) 我有一个类型如下,其中如果名称是除"过滤器"以外的任何类型,则"AggrEntry"和"过滤器"的类型为"Aggr".
export interface Aggr {
[name: string]: AggrEntry;
filter?: Aggr;
}
Run Code Online (Sandbox Code Playgroud)
但是,除非我改为[name: string]: AggrEntry;
,否则ts代码将无法编译[name: string]: any;
.
错误是
[ts] Property 'filter' of type 'ResponseAggregation' is not assignable to string index type 'ResponseAggregationEntry'.
Run Code Online (Sandbox Code Playgroud)
逻辑上我猜测typescript尝试分配[name: string]
到过滤器,因为过滤器本身可以映射到[name: string]
.那么我将如何构建我的接口,以便ts编译器知道"name"将永远不会"过滤".
我有以下选择:
SELECT * FROM Table
WHERE Column= datepart(month,'2013-05-07 10:18:00')
AND Column= datepart(year,'2013-05-07 10:18:00')
Run Code Online (Sandbox Code Playgroud)
我想让它向我展示月份= 05和年份= 2013年的情况.实际上它没有显示任何东西(但有结果显示).谢谢.
我正在使用 WorkSite COM API 打开一个IMANEXT2Lib.IManFileOpenDlg
工作正常的。单击文档,我可以检索元数据,例如文档名称、版本、编号等。
是否有一种方法或技术可用于从 WorkSite 读取文档并提示通过浏览器下载/打开?
该IManage.IManDocument
有方法GetCopy()
可以将一个本地副本下载到指定的目录,但这不是真正的我后。
c# ×3
typescript ×2
autonomy ×1
datepart ×1
imanage ×1
json ×1
jsonschema ×1
nullable ×1
sql ×1
t-sql ×1
wcf ×1
worksite-sdk ×1