我需要检查SQL Server上是否已存在特定登录,如果不存在,则需要添加它.
我发现以下代码实际上将登录添加到数据库,但我想将其包装在IF语句中(不知何故)以检查登录是否存在.
CREATE LOGIN [myUsername] WITH PASSWORD=N'myPassword',
DEFAULT_LANGUAGE=[us_english],
CHECK_EXPIRATION=OFF,
CHECK_POLICY=OFF
GO
Run Code Online (Sandbox Code Playgroud)
我知道我需要询问系统数据库,但不知道从哪里开始!
如果你有一个充满能力的开发人员的房间,可以做些什么来鼓励那些开发人员对软件和软件开发感到兴奋和热情?
没有任何噱头,但真正的举措是创造一个人们想要在软件中工作的环境,而不仅仅是因为公司是一个整体工作的好公司.
我已经将几个不同的VS2008项目升级到VS2010,并且在转换时发现了VB.Net项目的问题.
转换后,VS2008中的.vbproj文件已从此更改:
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<DefineDebug>true</DefineDebug>
<DefineTrace>true</DefineTrace>
<OutputPath>bin\Debug\</OutputPath>
<DocumentationFile>CustomerManager.xml</DocumentationFile>
<WarningsAsErrors>41999,42016,42017,42018,42019,42020,42021,42022,42032,42036</WarningsAsErrors>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)
在VS2010中:
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<DefineDebug>true</DefineDebug>
<DefineTrace>true</DefineTrace>
<OutputPath>bin\Debug\</OutputPath>
<DocumentationFile>CustomerManager.xml</DocumentationFile>
<NoWarn>42353,42354,42355</NoWarn>
<WarningsAsErrors>41999,42016,42017,42018,42019,42020,42021,42022,42032,42036</WarningsAsErrors>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)
主要区别在于VS2010版本中添加了42353,42354,42355的值; 在IDE内部,它在Project Properties中显示为以下设置 编译部分为:
"函数返回没有返回值的内部值类型"=无
在Visual Studio 2010中构建代码时,这不是问题,但是当尝试通过我们的持续集成脚本构建代码时,它会因以下错误而失败:
[msbuild] vbc:命令行错误BC2026:选项'nowarn'的警告编号'42353'不可配置或无效
[msbuild] vbc:命令行错误BC2026:选项'nowarn'的警告号''42354'不可配置或无效
[msbuild] vbc:命令行错误BC2026:选项'nowarn'的警告号''42355'不可配置或无效
我在Google上找不到任何关于这些消息的内容,这很奇怪,因为我试图找出为什么会发生这种情况.
有关为什么Visual Studio 2010的转换向导正在执行此操作的任何建议?
我们有一个ASP .Net应用程序,我们使用Log4Net来记录应用程序中的详细信息 - 没有新内容 - 滚动日志文件名的格式通常为:
rolling-log.txt
rolling-log.txt.1
rolling-log.txt.2 etc.
Run Code Online (Sandbox Code Playgroud)
应用程序的每个用户都添加到日志文件中,对于特定用户的情况,日志文件可能难以阅读,因此,我们希望以某种方式修改配置文件以单独记录用户的日志详细信息,每次写入特定文件,例如
<applicationId>rolling-log.txt
<applicationId>rolling-log.txt.1
<applicationId>rolling-log.txt.2
etc.
Run Code Online (Sandbox Code Playgroud)
每个用户的唯一应用程序ID在哪里,由五位数字组成,例如
12345rolling-log.txt
Run Code Online (Sandbox Code Playgroud)
关于实现这个的最佳方法的任何想法,假设它是可能的?
干杯
布雷特
我有一个基于NAnt的脚本,我在连接到SQL Server 2008 Express的本地PC上运行,也在我的本地PC上运行,使用.sql文件删除和重新创建数据库 - 这很好用,这里没问题.
当我在另一台PC上重新创建相同的设置时出现问题,我在我的NAnt脚本中得到错误说:
System.InvalidOperationException: The 'SQLNCLI' provider is not registered on the local machine.
at System.Data.OleDb.OleDbServicesWrapper.GetDataSource(OleDbConnectionString constr, DataSourceWrapper& datasrcWrapper)
at System.Data.OleDb.OleDbConnectionInternal..ctor(OleDbConnectionString constr, OleDbConnection connection)
at System.Data.OleDb.OleDbConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject)
at System.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection, DbConnectionPoolGroup poolGroup)
at System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
at System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
at System.Data.OleDb.OleDbConnection.Open()
at NAnt.Contrib.Util.SqlHelper..ctor(String connectionString, Boolean useTransaction)
at NAnt.Contrib.Tasks.SqlTask.ExecuteTask()
at NAnt.Core.Task.Execute()
at NAnt.Core.Target.Execute()
at NAnt.Core.Project.Execute(String targetName, Boolean forceDependencies)
at NAnt.Core.Project.Execute()
at NAnt.Core.Project.Run()
Run Code Online (Sandbox Code Playgroud)
我在网上搜索过,发现在论坛中有人建议我需要安装Microsoft SQL Server Native Client,并从此URL获取.(不可否认,我只安装了Native Client部分) …
我们在构建过程中使用Java,因为它用于通过Ivy解析/发布我们的依赖项.
没问题,我们也没有用它2年,直到我们尝试将Java 6 Update 26升级到版本7 Update 7,而在本地开发人员PC(WinXP)上构建现在需要2个小时才能完成,而不是10分钟!!
PC上没有任何其他变化,使其成为我们关注的绝对目标.
有没有人知道为什么Java版本7会像这样产生这样的速度差异?
更新:构建过程是基于NAnt的,因此从命令(DOS)窗口中运行的NAnt脚本调用Java.exe.
我正在考虑对我们的项目使用并行单元测试,并且想知道实际编写这种并行单元测试的任何最佳实践.
我已将域名添加到我的Azure Active Directory帐户,但它表示域名未经验证.
为了验证域名,我进入我的"默认目录"并转到"域名"选项卡,在那里我可以看到我列出的域名.我单击它以突出显示它,然后单击底部栏上的"验证"按钮,弹出一个框:"为单点登录配置域",告诉我转到"目录集成"页面并完成所有步骤... "还有一个复选框,要求我立即转到目录集成页面.就是这样,除了右下角的勾选按钮.
我唯一的选择是发送到目录集成页面,其中的帮助主题指向其他网页,这些主题不一定反映我在Azure门户中看到的内容,就验证域名而言.
我知道我需要在我已经购买的域名上创建一个TXT记录,我可以从其他截图中看到我需要在Azure(某处)找到一个值为'MS = xxxxxx'但找不到的值从哪里获得这个价值证明是困难的.
我在找错了地方吗?
从我的角度来看,我们在内部构建了我们自己的"味道"NAnt/Ivy/CruiseControl.Net并且不禁让人觉得其他开发商店正在做同样的工作,但后来每个人都在发现同样的问题和陷阱.
我并不是在抱怨NAnt,Ivy或CruiseControl,因为他们在帮助我们的开发团队更加确定他们的代码质量方面做得非常出色,但这些工具非常受欢迎似乎很奇怪,但我们所有人都重新发明了CI轮.
是否有使用上述工具构建.Net应用程序的预制解决方案?
cruisecontrol.net nant continuous-integration build-process ivy
nant ×3
ivy ×2
java ×2
sql-server ×2
asp.net ×1
azure ×1
build ×1
domain-name ×1
log4net ×1
login ×1
nantcontrib ×1
performance ×1
unit-testing ×1