在SQL Server 2008中给出
TableA(A_ID, A_Data)
TableB(B_ID, B_Data)
ViewC(A_or_B_ID, A_or_B_Data)
Run Code Online (Sandbox Code Playgroud)
是否可以定义TableZ(A_or_B_ID, Z_Data)
这样的Z.A_or_B_ID
列被约束到在ViewC
?中找到的值?可以使用外键来查看视图吗?
当我尝试在已启动并运行SQL 2005 Express的开发计算机上安装新的SQL Server 2008 Express实例时,安装验证失败,因为安装了"SQL 2005 Express工具"并且我被告知要删除它们.
这到底是什么意思呢?
看完这篇文章后:
http://www.asql.biz/Articoli/SQLX08/Art1_5.aspx
我卸载了2005版本的SQL Management Studio,但在我的后续尝试期间收到了来自2008安装程序的相同错误.
更新
1)仅卸载SQL 2005 Management Studio.从2008安装收到相同的错误.
2)删除了所有SQL 2005常用组件.从2008安装收到相同的错误.
3)安装SQL 2008安装程序中的共享组件.尝试安装新的SQL 2008实例时,从2008安装中收到相同的错误.
4)卸载SQL 2008组件,重新启动,从安装介质重新安装SQL 2005 Management Studio,重新启动,从控制面板卸载,卸载SQL 2005工作站组件,重新启动.
SQL 2008的安装现在正在进行中.
似乎如果我在上面的更新2之后重新启动,事情就会变得更加顺利.:-(
我有一个针对SQL Server运行的多用户ASP.NET应用程序,并希望StoredProcA创建一个#temptable临时表 - 而不是表变量 - 来插入一些数据,然后分支到StoredProcB,StoredProcC和StoredProcD来操作数据每个业务规则都有#temptable.
与SQL交谈时,Web应用程序使用连接池.我是否会为每次调用StoredProcA获得一个新的#temptable临时区域?或者连接池是否会在用户之间共享#temptable?
我的单元测试项目中有以下方法:
[TestMethod]
[HostType("ASP.NET")]
[UrlToTest("http://localhost:3418/Web/SysCoord/ChooseEPA.aspx")]
[AspNetDevelopmentServerHost("%PathToWebRoot%")]
public void TestMethod1()
{
Page page = TestContext.RequestedPage;
Assert.IsTrue(false, "Test ran, at least.");
}
Run Code Online (Sandbox Code Playgroud)
我得到了这个例外:
测试适配器'WebHostAdapter'在运行测试'TestMethod1'时引发异常.无法正确配置网站; 获取ASP.NET进程信息失败.请求' http:// localhost:3418/SysCoord/VSEnterpriseHelper.axd '返回错误:远程服务器返回错误:(404)Not Found.远程服务器返回错误:(404)Not Found.
该页面在URL的浏览器中正常工作:http:// localhost:3418/Web/SysCoord/ChooseEPA.aspx.
此物理路径为:C:\ ESI\HR_Connect2\BenefitChangeSystem\Application_DEV\Web\SysCoord.
任何想法,将不胜感激.
更新1
根据本文,我的web.config文件中添加了以下内容.还使web.config可写并杀死/重新启动开发Web服务器.行为没有变化.
<location path="VSEnterpriseHelper.axd">
<system.web>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
</location>
Run Code Online (Sandbox Code Playgroud)
更新2
将AspNetDevelopmentServerHost属性更改为等效的[AspNetDevelopmentServerHost("%PathToWebRoot%\ solutionfolder\webfolder","/ webfolder")]解决了404问题.
不幸的是,测试开始返回500错误.进步,但并不多.使用干净的项目进行试验和错误得出的结论是,对web.config中的自定义类的引用导致了问题.
例如:
<profile enabled="true" defaultProvider="MyProfileProvider">
<providers>
<add name="MyProfileProvider" connectionStringName="ProfileConnectionString" applicationName="/MyApp" type="System.Web.Profile.SqlProfileProvider"/>
</providers>
<properties>
<add name="Theme" type="String" defaultValue="Default"/>
<add name="LastLogon" type="DateTime"/>
<add name="LastLogonIp" type="String"/>
<!--
<add name="EmployeeSearchCriteria" type="MyApplicationFramework.Profile.EmployeeSearchCriteria"/>
<add name="DocumentSearchCriteria" type="MyApplicationFramework.Profile.DocumentSearchCriteria"/>
--> …
Run Code Online (Sandbox Code Playgroud) 我有一些在ProjectX下创建的TFS 2010构建定义.现在源代码已移至从属于ProjectY的文件夹.如何将构建定义移动到ProjectY,以便它们显示在Project Explorer的Team Explorer的Builds节点下?
我们子公司的IT部门有一家咨询公司为他们编写了一个ASP.NET应用程序.现在它已经出现间歇性问题,混淆了当前用户是谁,并且已经知道他错误地向Joe展示了一些Bob的数据.
顾问们被带回来进行故障排除,我们被邀请听取他们的解释.突然发生了两件事.
首先,顾问主管提供了这个伪代码:
void MyFunction()
{
Session["UserID"] = SomeProprietarySessionManagementLookup();
Response.Redirect("SomeOtherPage.aspx");
}
Run Code Online (Sandbox Code Playgroud)
他继续说会话变量的赋值是异步的,这似乎是不真实的.对查询函数的调用可以异步执行某些操作,但这似乎是不明智的.
鉴于所谓的异步性,他的理论是在重定向不可避免的ThreadAbort异常被引发之前没有分配会话变量.然后,此故障阻止SomeOtherPage显示正确的用户数据.
其次,他举了一个他推荐的编码最佳实践的例子.而不是写:
int MyFunction(int x, int x)
{
try
{
return x / y;
}
catch(Exception ex)
{
// log it
throw;
}
}
Run Code Online (Sandbox Code Playgroud)
他推荐的技术是:
int MyFunction(int x, int y, out bool isSuccessful)
{
isSuccessful = false;
if (y == 0)
return 0;
isSuccessful = true;
return x / y;
}
Run Code Online (Sandbox Code Playgroud)
这肯定会起作用,并且在某些情况下从性能角度来看可能更好.
但是,从这些和其他讨论点来看,我们认为这个团队在技术上并不精通.
意见?
我正在使用iTextSharp 5.3.2.0将信息添加到包含W-2表单的现有PDF文件中.一切都运行良好,PDF文件在写入浏览器的响应流时看起来很棒; 但是,当用户完成查看PDF时,他会被问到"你想在关闭之前将更改保存到'W2.pdf'吗?" 每次他从网页上查看文档.
在试图缩小问题范围时,我实际上已经删除了所有修改但问题仍在继续.这是我的代码的简单版本,我的数据写入调用已注释掉:
PdfReader pdfReader = new PdfReader(dataSource.ReportTemplate);
using(MemoryStream outputStream = new MemoryStream())
using (PdfStamper pdfStamper = new PdfStamper(pdfReader, outputStream))
{
//dataSource.DrawDataFields(pdfStamper);
pdfStamper.FormFlattening = true;
return outputStream;
}
Run Code Online (Sandbox Code Playgroud)
在这种情况下,"空"PDF被写入浏览器并且看起来不错,但是当我关闭Acrobat窗口时,我仍然会被问到"你想保存吗".
在这一点上,我认为源PDF文件有问题.但是,当我将PDF文件的原始字节发送回浏览器时,在使用下面的代码时,我不会被问到"你想保存"的问题.
byte[] bytes = File.ReadAllBytes(dataSource.ReportTemplate);
using (MemoryStream outputStream = new MemoryStream())
{
outputStream.Write(bytes, 0, bytes.Length);
return outputStream;
}
Run Code Online (Sandbox Code Playgroud)
我的结论是iTextSharp在打开它并将字节写入流中的过程中对PDF做了一些"坏事",但我是iTextSharp的新手,很容易丢失一些东西.
FWIW,这是我们正在讨论的Acobat Reader 10.1.4.
编辑:用作模板的原始PDF大小约为80K.如果我查看通过浏览器流式传输的临时文件,iTextSharp编写的PDF文件大约为150K.但是,当我对Acrobat Reader提出的"保存更改"问题回答"是"时,生成的文件再次大约为80K.iTextSharp肯定会对这个文件做一些意想不到的事情.
我正在编写一个简单的 PowerShell 脚本,并且想要转储所有环境变量/值。简单的事情就像
gci 环境:* | 排序对象名称
似乎是一个好的开始。但这对我不起作用。
事情似乎变得古怪的是,我的脚本是从调度程序运行的作业中调用的,这两个作业都设置了其他开发人员配置的环境变量。
因此,当我使用如上所示的 Get-ChildItem 时,我得到:
gci :已添加具有相同密钥的项目。
最后,我的问题是:如何获取环境变量(最好是名称和值)以查看哪些变量添加不正确?
sql-server ×3
c# ×2
asp.net ×1
exception ×1
foreign-keys ×1
itextsharp ×1
powershell ×1
team-build ×1
tfs ×1
tfs2010 ×1
unit-testing ×1
view ×1