小编tee*_*nup的帖子

在 BLL、DAL 或 PL 中,我应该在哪里处理异常?

哪个是处理异常的最佳位置?BLL、DAL 或 PL ?

我应该允许 DAL 和 BLL 中的方法在链上抛出异常并让 PL 处理它们吗?还是我应该在 BLL 处理它们?

例如

如果我的 DAL 中有一个方法发出“ExecuteNonQuery”并更新一些记录,并且由于一个或多个原因,0 行会受到影响。现在,我应该如何让我的 PL 知道是否发生了异常或确实没有与条件匹配的行。我应该在我的 PL 代码中使用“try catch”并通过异常让它知道,还是应该在 DAL 处理异常并返回一些像 (-1) 这样的特殊代码让 PL 区分(异常)和(否)行匹配条件,即受影响的零行)?

.net c# architecture layered

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

如果 /QUIET 参数用于抑制 UI,则 MSIEXEC 不会安装 MSI 设置

我有一个使用 Install Shield Limited Edition 创建的 MSI 安装程序,我可以通过直接运行它来正常安装它。

如果我不使用 /QUIET 参数,我也可以使用 MSIEXEC 安装它,但如果我使用 /QUIET 参数,则不会安装该应用程序。

这背后的原因是什么?直接运行MSI时提示License Agreement,请问是不是没有静默安装的原因?

.net windows-installer installshield setup-deployment

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

无法找到类型或命名空间“DocumentFormat” - 仅在构建时 - 但智能感知显示类型可用

Power Tools for Open XML我已经从以下网站下载了:-

https://powertools.codeplex.com/

我在 VS2012 中打开解决方案,然后更新引用 -DocumentFormat.OpenXmlWindowsBase.

问题是:-

当我开始在类顶部键入名称空间时,Visual Studio 智能感知会显示名称空间,但是当我构建解决方案时,我从使用此名称空间的所有类中收到以下错误 -

The type or namespace 'DocumentFormat' could not be found.

.net c# vsto openxml openxml-sdk

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

如何在svn存储库中恢复已删除的文件[不在我的工作副本中]?

我删除了一些特定的文件夹(来自visual studio解决方案的 - bin,obj,pkg的全部内容)和我工作副本中的一些特定文件,然后提交,因此它们也从存储库中删除了.我知道我可以将我的工作副本更新到以前的版本,它们都会在我的工作副本中重新出现.

但他们将如何回到存储库?因此,当其他人更新时,他们会获得那些已删除的文件

当我将工作副本更新到先前版本后提交时,我发生了树冲突.

svn tortoisesvn

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

从PDF文件创建图像或PdfTemplate

在使用itextsharp库生成pdf时,我遇到了这种方法: -

iTextSharp.text.Image img = iTextSharp.text.Image.GetInstance(itextsharp.text.pdf.PdfTemplate);
Run Code Online (Sandbox Code Playgroud)

在哪里,我们可以从PdfTemplate获取Image实例.但是,我不知道如何创建PdfTemplate,并且没有构造函数采用pdf文件名或流.

我想要的原因是:我想从PDF文件创建一个图像,然后将该图像转换为另一个pdf文件.

有谁知道如何创建PdfTemplate对象?

c# pdf-generation itextsharp

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

为什么延迟加载在剃刀视图(cshtml文件)中不起作用?

我在cshtml文件中写下以下语句: -

@{
string categoryName = string.Format("{0}->{1}", label.Category.Parent.Name,
label.Category.Name);
@categoryName
}
Run Code Online (Sandbox Code Playgroud)

并得到一个例外Object reference null.

另一方面,同样适用于Controller.cs文件和即时窗口.我知道它与延迟加载有关.

它背后是否有任何概念,它在Cshtml文件中的表达式中不起作用?

谢谢

lazy-loading razor ef-code-first entity-framework-4.1 asp.net-mvc-3

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

如何约束<Border>元素的宽度和高度等于其内部内容?

<Grid x:Name="mainGrid">
                <Border BorderBrush="Black">
                        <Grid Name="detailGrid">
Run Code Online (Sandbox Code Playgroud)

在这里,它detailGrid和它border的外部可以获得完整的宽度和高度,mainGrid其中内部的内容detailGrid具有更小的宽度和高度.

如何约束和Border/和detailGrid适合其内容的宽度和高度,以便外网格的背景可见?

wpf xaml silverlight-4.0

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

Microsoft Interop Word Automation的DCOM配置设置

Microsoft Office Interop Word用来使用C#生成文档.为了使文档生成工作,应该有一个在进入"Microsoft Office Word 97 - 2003 Document"Dcom Config Settings为如下所示:

在此输入图像描述

首次安装Microsoft Office时,Local Path下面General Tab有正确的路径.如果我然后将计算机加入域,然后使用域用户重新启动系统,则Local Path变为空白,应用程序不会生成文档并出错.

即使我首先将计算机加入域,然后使用域用户登录然后安装Microsoft Office,Local Path首先显示正确,然后在重新启动后再次变为空白.同时,在同一时间,如果我登录Local User时,Path仍然存在.

是什么导致价值Local Path变为空白?

所有这些设置都在虚拟机上,并且自动化一词在域帐户上工作,因为我看到它在加入域的物理机器上工作.

UPDATE: What my application is doing:
Run Code Online (Sandbox Code Playgroud)

我的应用程序中有4-5个组件.

第一个是VSTO Word AddIn,它与Microsoft Word集成,我们在其中创建包含一些也保存在数据库中的表达式的新文档.表达式上也有条件,它们也可以嵌套.表达式包含XSD文件中的架构元素,这些元素保存在数据库中.创建此类文档后,其WordML将保存在数据库中.这一切都在VSTO AddIn中完成.

第二个是Web服务,它从另一个组件接收输入xml,该组件确认上面的XSD,架构元素嵌入到通过VSTO addIn创建的文档中的表达式中.此Web服务检查验证和其他几项任务.然后,它从数据库中获取相应的Word文档的WordML中,并将其传递到使用它的API,遍历它递归来替换输入XML其实际值的架构元素的话语互操作.然后,将WordML作为word文档保存到文件中.

这也会在保存文档之前将模板附加到文档中.它使用Word Interop的SaveAs功能将文件另存为PDF.

更新:我又通过我的完整的应用程序不见了,才知道我们被解析的Office Open XML(例如用于输送输入到Word文档)做的所有的事情,但是,我们使用的是Word自动化做的唯一的事情是以下:

  1. 使用Word Interop将生成的WordML保存为Word格式文件之一.
  2. 将生成的WordML导出为PDF文件.
  3. 将多个WordML合并到单个Word文档文件中.
  4. 为它获取XML.

所有这四个代码如下所示,仅包含相关的代码部分:

Microsoft.Office.Interop.Word.Document wordDocument = null;
object templateName = "templateFile.dotm";
wordDocument = this.WordApplication.Documents.Add(ref …
Run Code Online (Sandbox Code Playgroud)

.net c# dcom com-interop office-interop

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

如何从自定义帮助器方法调用Ajax.BeginForm?

我可以从自定义帮助器方法调用Ajax.BeginFrom吗?

AjaxHelper在自定义帮助器方法中不可用,因此我尝试在调用它时将ViewPage中提供的"Ajax"传递给Helper方法,但是在方法中,BeginForm在传递的"Ajax"参数上不可用.

asp.net asp.net-mvc-2

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

如何在新行中包含 BAT 文件中 CHOICE 命令的每个选项?

我想把 CHOICE 命令的每个选项都放在一个新行中。

例如

CHOICE /N /C:123 /M "1 - one \n 2 - two \n 3 - three"
Run Code Online (Sandbox Code Playgroud)

但这给了我提示: 1 - 一 \n 2 - 二 \n 3 - 三

如何将这些选项显示在不同行的提示中?像这样:

1 - one  
2 - two  
3 - three
Run Code Online (Sandbox Code Playgroud)

batch-file

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

这个T-SQL出了什么问题?

这个T-SQL出了什么问题:

DECLARE @temp TABLE(ID INT IDENTITY,[Value] VARCHAR(100))
SET @temp = dbo.[fnCSVToTable](',2,3')
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server

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

POKEIN如何识别客户端进行SERVER PUSH?ClientIDs是否是IP?

我有一个Web应用程序,用户将看到新消息的通知,我想将通知推送给已经登录的用户.

我已经看到我可以使用PokeIn的服务器推送来做到这一点,我已经尝试并理解了使用它的简单应用程序,但我没有得到ClientID的东西.

它保存在"OnClientConnected"中的ClientId是一个简单的整数,那么它如何识别客户端并调用它们上的函数?

此外,它写道,它使用混合长轮询方法,有人可以解释一下这是什么?

没有足够的知识,我将无法实施.

是否在登录用户的数据库中保存ClientID,然后使用此方法推送数据呢?

更新:

即使是在同一浏览器窗口或选项卡中的请求,每次请求时收到的ClientId都不同,所以我必须在我的母版页中包含Handler,并且每次请求时,我都必须将收到的ClientId映射到Logged In用户,以便我可以发送消息给他.

我不能只在LogIn上映射一次(ClientId到LoggedIn UserId),然后使用相同的ClientId向他发送消息吗?

asp.net push server-push push-notification pokein

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