小编jon*_*aze的帖子

Gridview使用通用列表作为DataSource和自动生成列

我正在寻找一个带有通用列表的GridView,并自动生成列.我得到一个例外,它没有正确的属性来允许它自动生成列.

例外

The data source for GridView with id 'GV1' did not have any properties or attributes from which to generate columns.  Ensure that your data source has content.
Run Code Online (Sandbox Code Playgroud)

网格视图

<asp:GridView ID="GV1" runat="server" AutoGenerateColumns="true"></asp:GridView>
Run Code Online (Sandbox Code Playgroud)

页面加载

    //LINQ query to populate list
    List<student> su = new List<student>();
    dbDataContext db = new dbDataContext();
    var q = from c in db.data_table
            where c.processed == false
            orderby c.date_complete descending
            select c;
     //iterate through results and add to list
     foreach(var c in q)
     {
         student s …
Run Code Online (Sandbox Code Playgroud)

c# linq data-binding gridview

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

在IF语句中将变量设置为SCOPE_IDENTITY

我正在尝试编写一个存储过程来检查是否存在记录,如果它不存在,则返回一个插入SCOPE_IDENTITY,如果确实存在则只返回该对象的ID.我在程序中获得此信息后,我需要使用它进行进一步处理,并且不确定如何SCOPE_IDENTITYIF...ELSE语句中完成获取.

我的两张桌子:

CREATE TABLE [dbo].[ActionTable] (
    [ActionID] [int] IDENTITY(1, 1) NOT NULL,
    [ObjectID] [int] NOT NULL,
    [ActionName] [nvarchar](255) NOT NULL
)

CREATE TABLE [dbo].[ObjectTable] (
    [ObjectID] [int] IDENTITY(1, 1) NOT NULL,
    [ObjectName] [nvarchar](255) NOT NULL
)
Run Code Online (Sandbox Code Playgroud)

存储过程:

CREATE PROCEDURE [dbo].[SetAction]
    @ActionName [nvarchar](255),
    @ObjectName [nvarchar](255)
AS
    DECLARE @ObjectID [int]

    --I have tried the following

    IF NOT EXISTS(SELECT ObjectID FROM ObjectTable WHERE ObjectName = @ObjectName)
        INSERT INTO ObjectTable(ObjectName)VALUES(@ObjectName)
        --Here I need to set @ObjectID = SELECT …
Run Code Online (Sandbox Code Playgroud)

sql-server stored-procedures if-statement sql-server-2008

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

用于INSERT和UPDATE的SQL Server存储过程,更好地分离或压缩?

我正在创建用于在SQL Server数据库中插入和更新数据的存储过程.起初我正在为Add/Set创建一个单独的过程,但后来我偶然发现了一个允许我将它们压缩成一个过程的查询.我想与SO社区核实任何可能的未来问题,这样做.

单独的程序

--INSERT Procedure
CREATE PROCEDURE [dbo].[AddDataType]
    @TypeName [nvarchar](255),
    @TypeProperty [nvarchar](255)
AS
BEGIN
    SET NOCOUNT ON;

    INSERT INTO DataType(TypeName, TypeProperty)
    VALUES(@TypeName, @TypeProperty)

    SELECT SCOPE_IDENTITY()
END

--UPDATE Procedure
CREATE PROCEDURE [dbo].[SetDataType]
    @ID [int],
    @TypeName [nvarchar](255),
    @TypeProperty [nvarchar](255)
AS
BEGIN
    SET NOCOUNT ON;

    UPDATE DataType SET TypeName = @TypeName, TypeProperty = @TypeProperty
    WHERE ID = @ID
 END

EXEC AddDataType @TypeName = 'Test Name', @TypeProperty = 'Test Property' --INSERT
EXEC SetDataType @ID = 42, @TypeName = 'Test Name', @TestProperty = 'Test Property' …
Run Code Online (Sandbox Code Playgroud)

sql-server stored-procedures sql-server-2008

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

SQL Server Set变量,如果存在,则插入表中

我正在寻找一种更有效的方法来完成这项任务.我需要设置一个等于ID的变量(如果存在),如果不存在,则将变量设置为插入的标识.我可以通过执行以下操作来实现此目的:

@VariableName --sent through to stored procedure

DECLARE @VariableID [int]

IF EXISTS(SELECT VariableID FROM VariableTable WHERE VariableName = @VariableName)
    SET @VariableID = (SELECT VariableID FROM VariableTable WHERE VariableName = @VariableName)
ELSE 
    INSERT INTO VariableTable(VariableName) VALUES(@VariableName)
    SET @VariableID = SCOPE_IDENTITY();
END
Run Code Online (Sandbox Code Playgroud)

但是,运行相同的查询两次似乎效率低下(检查是否存在以及是否设置了变量)

只是寻找更好的方法来完成这项任务的建议.

stored-procedures exists sql-server-2008

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

如何在另一个jQuery插件中包含一个外部插件

我正在为我正在开发的项目构建一个自定义jQuery插件.我想返回一个自定义的对象到另一个jQuery插件...而不是必须确保使用我的插件的每个页面也有这个其他插件,是否可以将它包含在实际的插件本身?

而不是在使用我的插件的每个页面上键入以下内容:

<script type="text/javascript" src="url_to_my_plugin" />
<script type="text/javascript" src="url_to_plugin" />
Run Code Online (Sandbox Code Playgroud)

我想看看是否有一个选项可以允许以下内容:

(function($) {
          $.include('url_to_plugin');
          //code to implement my plugin
})(jQuery);
Run Code Online (Sandbox Code Playgroud)

感谢Marko的建议......我可能做错了,因为我引用的插件没有被识别.以下是我的代码:

(function($) {
     var script = document.createElement('script');
     script.type = 'text/javascript';
     script.src = 'jquery.simplemodal.js'; //in same dir as my plugin
     //tried both
     document.body.appendChild(script);
     document.getElementsByTagName('head')[0].appendChild(script);

     $.fn.SUI_CheckProgress = function(options) {
          return this.each(function() {
               var obj = $(this);
               var nDiv = $('<div>');
               nDiv.modal(); //error nDiv.modal() is not a function
               $(obj).append(nDiv);
          }
     };
});
Run Code Online (Sandbox Code Playgroud)

我尝试在实际函数调用的内部和外部声明脚本(理想情况是全局发生).如果我在我调用的页面中引用脚本,我验证代码是否正确执行,但是当我删除引用时它失败了.有关以编程方式向页面添加脚本的任何其他信息将不胜感激.

修复:我的问题是我引用了与js插件相同的目录,但是当它被添加到页面时它位于该目录之外.

script.src = 'jquery.simplemodal.js';
Run Code Online (Sandbox Code Playgroud)

固定

script.src = 'js/jquery.simplemodal.js';
Run Code Online (Sandbox Code Playgroud)

javascript jquery jquery-plugins include

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

undo preventDefault()或以编程方式禁用链接集合的更好方法

我有一个页面,其中包含网络状态的事件侦听器.当网络"离线"时,我想禁用任何跨域链接以进入离线模式.我试图使用.preventDefault(),但是当应用程序重新联机时,我需要重新启用链接.

事件听众

//check network status
if(!navigator.onLine) { 
    offlineLinks(); //Offline mode function
}
//add event listeners for network status
window.addEventListener('offline', function(e) {
    offlineLinks(); //Offline mode function
}, false);
window.addEventListener('online', function(e) {
    //need to re-enable links/Online mode
}, false);
window.addEventListener('error', function(e) {
    alert('Error fetching manifest: there is a good chance we are offline.');
    offlineLinks(); //Offline mode function
});
Run Code Online (Sandbox Code Playgroud)

"去链接"功能

function offlineLinks() {
    $('a[href^="http"]').click(function(e) {
        e.preventDefault();
        $('#offline-dialog').dialog({
            modal: true,
            buttons: {
                Ok: function() {
                    $(this).dialog('close');
                }
            }
        });
    });
}
Run Code Online (Sandbox Code Playgroud)

我正在寻找一种可扩展的解决方案,如果页面上有大量链接,则不会导致延迟.是否有一个简单的解决方案来扭转 …

javascript jquery html5 offlineapps preventdefault

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

jQuery .focusOut()取决于下一个选定元素的条件操作

我有一个带有文本输入#usernameInput和链接的表格单元格#saveLink.使用jQuery我有一个分配给click事件的函数#saveLink.

我想要实现的是,当#usernameInput失去焦点时我想隐藏它.除非失去焦点#saveLink.换句话说,如果用户点击#saveLink我要隐藏的#usernameInput其他地方,否则请在上面调用click事件#saveLink.

我没有问题处理,$('#usernameInput').focusout()但我无法检测是否单击了保存链接.

这是我到目前为止所拥有的.

<script type="text/javascript">

$('#usernameInput').focusout(function ()
{

    if (!$('#saveLink').is(':focus'))
    {
        $('#usernameInput').hide();
    }
    return;

});</script>
Run Code Online (Sandbox Code Playgroud)

jquery

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

插入时的SQL Server触发器以及如何引用插入的数据

高级别我有两个表需要镜像一些数据.我无法通过并更改所有代码以写入两者,所以我想我会使用SQL触发器将数据插入到第二个表中的任何时候.这是我被困的地方:

CREATE TRIGGER new_trigger_INSERT
ON old_table
FOR INSERT
INSERT INTO new_table (id, first_name, last_name)
VALUES () --This is where I'm lost, I need to insert some of the data from the insert that executed this trigger
Run Code Online (Sandbox Code Playgroud)

任何帮助表示赞赏,如果有更好的方法来实现这一点,请告诉我.

sql-server triggers insert

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

查询无法转换为日期时间的数据列

我有一个较旧的表,其中一个datetime列被构建为a,varchar并且在此表中插入数据的表单是自由形式的,没有验证/限制.我已经更正了表格,现在我正在设定规范化数据的任务.我需要查询此列以查找不能CAST作为的所有记录datetime

例子:

9/30/2008
9/30/13
august 2010
5/11
30SEP12
31-Mar-2011
2005
Run Code Online (Sandbox Code Playgroud)

我已经清理了N/A数据,NULL但不确定是否能够获得所有不被视为有效日期的有效方法.任何提示或技巧或我将不得不通过记录记录将此列转换为datetime数据类型?

datetime type-conversion sql-server-2008

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

SQL存储过程中的可选参数

我正在尝试创建一个具有可选参数的存储过程.我按照这里列出的说明操作.我也引用了这个问题.但是我一直收到以下错误:

将数据类型varchar转换为int时出错.

当我执行它时,它工作

EXEC sp_get_user {id#}
Run Code Online (Sandbox Code Playgroud)

要么

EXEC sp_get_user NULL, {username}
Run Code Online (Sandbox Code Playgroud)

但失败了

EXEC sp_get_user {username}
Run Code Online (Sandbox Code Playgroud)

存储过程

@id int = NULL,
@username nvarchar(50) = NULL

SELECT
    username = COALESCE(a.Username, b.Username),
    password = COALESCE(a.Password, b.Password),
    signup_date = COALESCE(a.SignedUpOn, b.Signup_Date)
FROM table1 a
FULL OUTER JOIN table 2 b
ON a.ID = b.ID
WHERE ((a.ID = @id OR @id IS NULL)
AND (a.Username = @username OR @username IS NULL)
OR (b.ID = @id OR @id IS NULL)
AND (b.Username …
Run Code Online (Sandbox Code Playgroud)

linq stored-procedures optional-parameters sql-server-2008

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

Javascript将对象从包含文件传递到页面

我创建了一个javascript对象和一个函数来构建一个新的对象实例.我现在需要在我的页面上使用这个对象但是没有运气,我觉得我错过了一些东西.

JS包含文件

function MyObject() {
    this.ID = 0;
    this.Name = "";
}

function GetObject(param1, param2) {
    //ajax call to get json string
    $.ajax({ //leaving out details this part works
    success: function(data) {
        var jsonData = $.parseJSON(data.d);

        var myObj = new MyObject();
        myObj.ID = jsonData[0].ID;
        myObj.Name = jsonData[0].Name;

        return myObj;
    });
}
Run Code Online (Sandbox Code Playgroud)

此调用工作正常,但是当我尝试访问我得到的页面上的数据时 undefined

<script type="text/javascript">
    $(function() {
        var o = GetObject(1, 2);
    });
</script>
Run Code Online (Sandbox Code Playgroud)

通过将DOM对象传递给函数并将其分配到那里,我能够使它工作.

function GetObject(param1, param2, domObj) {
    //ajax call to get json string
    $.ajax({ //leaving out …
Run Code Online (Sandbox Code Playgroud)

javascript jquery object instance

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