小编Wil*_*ler的帖子

SQL Server脚本:ALTER PROCEDURE-在一个脚本中执行多个ALTER PROCEDURE,而不必一个接一个地选择每个ALTER

我知道这不是什么大问题,但是无论如何我都会感到挠痒。

  1. 我有一个SQL Server 2005脚本来创建新的数据表,约束,更改某些表以添加列,更改程序以将表更改考虑在内,等等。
  2. 一切运行正常,直到脚本遇到我的ALTER PROCEDURE语句。
  3. 错误消息如下:

“消息156,级别15,状态1,过程cpromo_Get_ConsultDetails_PromotionBan,第59行关键字'PROCEDURE'附近的语法不正确。

这是我的脚本示例:

ALTER PROCEDURE [dbo].[cpromo_Get_ConsultDetails_PromotionBan] 
(
 @idPromoBan int, 
 @uid int 
)
AS
begin
 set nocount on;

 /* 1-  detail de la promo */
 SELECT p.[nopromo], p.[StartDate], p.[EndDate], p.[DateText]
 FROM [cpromo_PromotionBanniere] as pb
 INNER JOIN [cpromo_Promotions] as p ON p.[idPromo] = pb.[idPromo]
 WHERE (pb.[idPromoBan] = @idPromoBan)

 /* 2 - cartes de la promo */
 SELECT pis.[idCardText], ct.[nom], ct.[descr], ct.[prix], ct.[prixCoupon], ct.[qtyItem], i.[Impact]
 FROM [cpromo_PromotionsItems] as pis
 INNER JOIN [cpromo_Impacts] as i ON i.[idImpact] = …
Run Code Online (Sandbox Code Playgroud)

sql-server-2005 alter-table sql-scripts alter

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

C#2.0中使用了哪些功能,但VBNET 2.0中没有这些功能,以及如何解决?

我不希望VB.NET和C#开发者之间发生战争,我的目标也不是打开C#VS VB.NET对抗.

我希望大家列出一个在C#中大量使用的功能,但在VB.NET 2.0中不可用,你将如何解决类似的行为或目的呢?

例如:

C#

接受void(return)lambda表达式.这是FNH映射的示例:

Component(x => x.Address, m => { 
    m.Map(x => x.Number); 
    m.Map(x => x.Street); 
    m.Map(x => x.PostCode); 
});
Run Code Online (Sandbox Code Playgroud)

这在VB.NET 4.0之前是不可能的(假设在VB.NET 4.0中可行)

VB.NET

必须编写一个帮助方法(Sub),并提供AddressOf这个方法以便解决.

Private Sub Helper(ByVal m As MType) 
    m.Map(Function(x) x.Number) 
    m.Map(Function(x) x.Street) 
    m.Map(Function(x) x.PostCode) 
End Sub 

...   
Component(Function(x) x.Address, AddressOf Helper) 
Run Code Online (Sandbox Code Playgroud)

现在我知道,它不是VB.NET 2.0,但这只是一个例子.VB.NET 3.0和3.5也可以使用.请提一下这个版本的VB.NET.

.net c# vb.net

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

T SQL循环插入或更新

我有两张桌子.

表A和表B.列是相同的.

create table TableA (
    id int
    , name varchar
    , last datetime
)

create table TableB (
    id int
    , name varchar
    , last datetime
)
Run Code Online (Sandbox Code Playgroud)

我用大量数据填充表A. 我想将表A中的数据插入或更新到表B中.

我想从表A中获取数据,如果id和name doenst匹配则插入到表B中,如果id和name匹配则更新.

我尝试了一些ETL工具,但结果非常慢.我有id和name的索引,我想用SQL尝试这个.

我有以下但不正确的工作:

SELECT      @id = ID, 
      @name = name, 
      @LSDATE = LastSeen_DateTime   
            FROM DBO.A
IF EXISTS (SELECT ID, name FROM DBO.A
WHERE  @ID = ID AND @name = Name)
Run Code Online (Sandbox Code Playgroud)

begin - update end else begin --insert end

我想我需要把它放在一个循环中并且不太确定如何使这个运行.

谢谢.

sql t-sql sql-server stored-procedures sql-server-2005

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

学习WPF会提高我的ASP.NET技能吗?

我已经在Windows Forms中工作多年了,现在仍然如此.我对ASP.NET技术一无所知,也没有其他与Web相关的技术.

我曾经合作过:

  1. Oracle Form Builder;
  2. Visual dBase 7.5;
  3. Delphi 2.0,3.0和7.0;
  4. Sybase Power Builder 10.5;
  5. Visual Basic 6;
  6. Visual Basic 2003/2005/2008;
  7. 最终,Visual C#2005/2008.

我是一名C#程序员,今年在VB.NET方面的经验越来越丰富.

在考虑我的经验的同时,以最佳方式学习WPF的方法是什么?

我想知道,学习WPF会提高我在ASP.NET等方面的技能吗?

感谢您的提示和提示大家!=)

c# vb.net asp.net wpf

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

EnumDataTypeAttribute是否应该使用Entity Framework在.NET 4.0中正常工作?

我有一个枚举,我希望将其作为某种值保存到底层数据库中,以便我可以来回传递它.

我已经阅读了一些建议创建枚举包装器的文章,其中定义了静态隐式运算符,使用ComplexType对象映射进行映射,如下面的链接所述.

如何在EF4中伪造枚举

这个解决方案完美无瑕!我要感谢Alex James.

除此之外,我发现了EnumDataTypeAttribute Class哪个目的似乎通过实体框架处理枚举持久性.我试了一下它似乎根本没用.这是一个代码示例.

public enum StreetDirection {
    East
    , None
    , North
    , NorthEast
    , NorthWest
    , South
    , SouthEast
    , SouthWest
    , West
}

public enum StreetType {
    Avenue
    , Boulevard
    , Court
    , Crescent
    , Drive
    , Hill
    , None
    , Road
    , Street
}

public class StreetTypeWrapper {
    public int Value {
        get {
            return (int)t;
        } 
        set {
            t = (StreetType)value;
        }
    }
    public StreetType EnumValue {
        get …
Run Code Online (Sandbox Code Playgroud)

enums attributes persistence wrapper entity-framework-4

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

PHP:$ _SESSION似乎没有设置.任何的想法?

我在搜索为什么我的会话不会被设置时通过这个SO Q/A.

On $_GET set $_SESSION won't work

我真的不明白这是否适用于我的情况.在这里.

的index.php

<?php 
session_start();

if (!isset($_SESSION["authenticated"])) $_SESSION["authenticated"] = false; 
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html>
<head>
...
Run Code Online (Sandbox Code Playgroud)

然后,当用户验证自己时,我会调用以下内容.

authenticate.php

<?php
require_once "data/data_access.php";

$userName = "";
$password = "";

if (isset($_REQUEST["userName"])) $userName = $_REQUEST["userName"];
if (isset($_REQUEST["password"])) $password = $_REQUEST["password"];

$isAuthentic = isAuthenticUser($userName, $password);
$_SESSION["authenticated"] = $isAuthentic;
echo $isAuthentic;
?>
Run Code Online (Sandbox Code Playgroud)

我还每隔5秒检查一次身份验证事件,以便为用户所在的部分创建按钮.

authenticated.php

<?php echo isset($_SESSION["authenticated"]) && $_SESSION != false ? 'true' : 'false'; ?>
Run Code Online (Sandbox Code Playgroud)

和我的Ajax调用设置:

my_project.js

$(document).ready(function() { startAuthenticationChecking(); });

function startAuthenticationChecking() …
Run Code Online (Sandbox Code Playgroud)

php authentication ajax session jquery

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

使用外观和MVC有什么好处?

阅读有关外观,但不太了解使用的优势,主要是使用MVC.有人可以帮我理解吗?一些更实用的例子?请原谅我的无知!

language-agnostic design-patterns facade

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

View模型的构造函数或Property注入?

我最近IList<T>在一个存储库方法调用中发布了一个关于Ninject没有注入的问题,该调用返回IList<T>一个视图模型构造函数,给出的答案是注入某种类型的存储库等.

但是,我已经读过将某个存储库等注入到视图模型的构造函数中的某个地方被认为是反模式(不记得是出于什么原因).

Dave Thieben先生说,如果我按照MVC或MVP中的方式使用ViewModel模式,那么视图模型应该没有注入其构造函数的依赖项,而是应该通过Controller内的Property Injection来填充它.主持人.

遵循规则"完全注入该类需要履行其职责",ViewModel所需的所有内容都是基于托管内容的用户对象列表.那么为什么不通过Constructor Injection直接注入,而不是通过Property Injection注入?

c# asp.net-mvc dependency-injection viewmodel asp.net-mvc-viewmodel

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

如何实现需要重复成员名称的接口?

我经常需要实现一些接口,例如IEnumerable<T>在我的代码中.

每次,当自动实现时,我会遇到以下情况:

public IEnumerator<T> GetEnumerator() {
    // Code here...
}

public IEnumerator GetEnumerator1() {
    // Code here...
}
Run Code Online (Sandbox Code Playgroud)

虽然我必须实现两个GetEnumerator()方法,但它们不可能具有相同的名称,即使我们知道它们以某种方式执行相同操作.编译器不能将它们视为另一个的重载,因为只有返回类型不同.

这样做时,我设法将GetEnumerator1()访问者设置为private.这样,编译器就不会抱怨没有实现接口成员,而只是NotImplementedException在方法体内抛出一个.

但是,我想知道这是一个好的做法,还是我将以不同的方式进行,也许是方法别名或类似的东西.

实现接口时最好的方法是什么,例如IEnumerable<T>需要实现两个具有相同名称的不同方法?

编辑#1

VB.NET在实现接口时的反应是否与C#不同,因为在VB.NET中它是明确实现的,因此强制执行GetEnumerator1().这是代码:

Public Function GetEnumerator() As System.Collections.Generic.IEnumerator(Of T) Implements System.Collections.Generic.IEnumerable(Of T).GetEnumerator
    // Code here...
End Function

Public Function GetEnumerator1() As System.Collections.Generic.IEnumerator Implements System.Collections.Generic.IEnumerable.GetEnumerator
    // Code here...
End Function
Run Code Online (Sandbox Code Playgroud)

两种GetEnumerator()方法都是显式实现的,编译将拒绝它们具有相同的名称.为什么?

ienumerable ienumerator implementation interface .net-2.0

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

通过反射获取接口类型的构造函数,是否有比循环类型更好的方法?

我写了一个泛型类型:IDirectorySource<T> where T : IDirectoryEntry,我使用的是通过我的接口的对象来管理Active Directory中的条目,其中:IGroup,IOrganizationalUnit,IUser.

这样我就可以写下面的内容:

IDirectorySource<IGroup> groups = new DirectorySource<IGroup>(); // Where IGroup implements `IDirectoryEntry`, of course.`

foreach (IGroup g in groups.ToList()) {
    listView1.Items.Add(g.Name).SubItems.Add(g.Description);
}
Run Code Online (Sandbox Code Playgroud)

IDirectorySource<T>.ToList()方法中,我使用反射来找出类型参数的适当构造函数T.但是,由于T给定了一个接口类型,它根本找不到任何构造函数!

当然,我有一个internal class Group : IGroup实现IGroup接口的.无论我多么努力,我都无法弄清楚如何通过我的实现类从我的界面中获取构造函数.

[DirectorySchemaAttribute("group")]
public interface IGroup {
}

internal class Group : IGroup {
    internal Group(DirectoryEntry entry) {
        NativeEntry = entry;
        Domain = NativeEntry.Path;
    }
    // Implementing IGroup interface... …
Run Code Online (Sandbox Code Playgroud)

c# generics reflection dependency-injection interface

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