小编Tho*_*mas的帖子

使用jquery启用/禁用asp:validators

我正在使用向导,用户可以在其中注册.有一个asp:RadioButtonList有两个选项,当radiobutton改变时,向导中的一些输入字段会改变.在每个字段上都有一些asp:Validators(例如asp:RequiredFieldValidator).问题是,当用户提交页面时,隐藏文本框的验证器仍然会弹出.

首先,这里是div标签,它改变了显示的文本框和RadioButtonList

<div id="divTxt1">
  <asp:TextBox runat="server" CssClass="text" ID="txtNumber"
       type="number"/>
  <asp:RequiredFieldValidator ID="RequiredFieldValidator1" 
       runat="server" ControlToValidate="txtNumber" EnableClientScript="true" ErrorMessage="Error" ToolTip="Error">*
   </asp:RequiredFieldValidator>
</div>
<div id="divTxt2">
  <asp:TextBox runat="server" CssClass="text" ID="txtNumber2"
       type="number"/>
  <asp:RequiredFieldValidator ID="RequiredFieldValidator2" 
       runat="server" ControlToValidate="txtNumber2" EnableClientScript="true" ErrorMessage="Error2" ToolTip="Error2">*
   </asp:RequiredFieldValidator>
</div>
<div id="radio">
<asp:RadioButtonList ID="RadioButtonList1" runat="server" RepeatDirection="Horizontal">
   <asp:ListItem Value="1" Selected="True">Privat</asp:ListItem>
   <asp:ListItem Value="2">Offentlig</asp:ListItem>
   </asp:RadioButtonList>
</div>
Run Code Online (Sandbox Code Playgroud)

我试图使用类似下面的JQuery来解决它,我已经读过它应该做的伎俩,但不幸的是它没有:

$(document).ready(function () {

    $('#<%= WizardStep1.ContentTemplateContainer.FindControl("RadioButtonList1").ClientID %> input').change(function () {
        if ($(this).val() == "1") {
            $('#txtNumber').toggle('fast');
            $('#txtNumber2').toggle('fast');     
            ValidatorEnable($('#<%=WizardStep1.ContentTemplateContainer.FindControl("RequiredFieldValidator1").ClientID %>')[0], false);
            ValidatorEnable($('#<%=WizardStep1.ContentTemplateContainer.FindControl("RequiredFieldValidator2").ClientID %>')[0], true);
        }

        if ($(this).val() == "2") {
            $('#txtNumber').toggle('fast');
            $('#txtNumber2').toggle('fast');
            ValidatorEnable($('#<%=WizardStep1.ContentTemplateContainer.FindControl("RequiredFieldValidator2").ClientID %>')[0], …
Run Code Online (Sandbox Code Playgroud)

asp.net jquery wizard requiredfieldvalidator

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

带导入的XSD到XML

我目前正在开发一种生成XML文件的服务,该服务遵循发票的UBL标准,因此我需要使用一些提供的XSD架构.

我正在使用.NET C#进行开发,并找到了一种可以将XSD映射到C#类的方法 - 使用XSD.exe - 这似乎没问题?

我面临的问题是,xsd文件中还有其他命名空间,这似乎会对我生成的类(xsd:imports)产生一些问题:

<!-- ===== xsd:schema Element With Namespaces Declarations ===== -->
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2"
xmlns="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2"
xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2"
xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2"
xmlns:udt="urn:un:unece:uncefact:data:specification:UnqualifiedDataTypesSchemaModule:2"
xmlns:ccts="urn:un:unece:uncefact:documentation:2"
xmlns:ext="urn:oasis:names:specification:ubl:schema:xsd:CommonExtensionComponents-2"
xmlns:qdt="urn:oasis:names:specification:ubl:schema:xsd:QualifiedDatatypes-2"
elementFormDefault="qualified"
attributeFormDefault="unqualified"
version="2.0">
<!-- ===== Imports ===== -->
<xsd:import namespace="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2" schemaLocation="../common/UBL-CommonAggregateComponents-2.0.xsd"/>
<xsd:import namespace="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" schemaLocation="../common/UBL-CommonBasicComponents-2.0.xsd"/>
<xsd:import namespace="urn:un:unece:uncefact:data:specification:UnqualifiedDataTypesSchemaModule:2" schemaLocation="../common/UnqualifiedDataTypeSchemaModule-2.0.xsd"/>
<xsd:import namespace="urn:oasis:names:specification:ubl:schema:xsd:CommonExtensionComponents-2" schemaLocation="../common/UBL-CommonExtensionComponents-2.0.xsd"/>
<xsd:import namespace="urn:oasis:names:specification:ubl:schema:xsd:QualifiedDatatypes-2" schemaLocation="../common/UBL-QualifiedDatatypes-2.0.xsd"/>
<!-- ===== Root Element ===== -->
<xsd:element name="Invoice" type="InvoiceType">
...
Run Code Online (Sandbox Code Playgroud)

我使用以下命令运行xsd.exe:

xsd.exe /c C:\Users\tn\Downloads\os-UBL-2.0\os-UBL-2.0\xsd\maindoc\UBL-Invoice-2.0.xsd C:\Users\tn\Downloads\os-UBL-2.0\os-UBL-2.0\xsd\common\UBL-CommonAggregateComponents-2.0.xsd C:\Users\tn\Downloads\os-UBL-2.0\os-UBL-2.0\xsd\common\UBL-CommonBasicComponents-2.0.xsd C:\Users\tn\Downloads\os-UBL-2.0\os-UBL-2.0\xsd\common\UnqualifiedDataTypeSchemaModule-2.0.xsd C:\Users\tn\Downloads\os-UBL-2.0\os-UBL-2.0\xsd\common\UBL-CommonExtensionComponents-2.0.xsd C:\Users\tn\Downloads\os-UBL-2.0\os-UBL-2.0\xsd\common\UBL-QualifiedDatatypes-2.0.xsd C:\Users\tn\Downloads\os-UBL-2.0\os-UBL-2.0\xsd\common\CodeList_UnitCode_UNECE_7_04.xsd C:\Users\tn\Downloads\os-UBL-2.0\os-UBL-2.0\xsd\common\CodeList_MIMEMediaTypeCode_IANA_7_04.xsd C:\Users\tn\Downloads\os-UBL-2.0\os-UBL-2.0\xsd\common\CodeList_LanguageCode_ISO_7_04.xsd C:\Users\tn\Downloads\os-UBL-2.0\os-UBL-2.0\xsd\common\CodeList_CurrencyCode_ISO_7_04.xsd
Run Code Online (Sandbox Code Playgroud)

当我尝试使用生成的代码生成XML文件时,输出看起来像这样,缺少导入和namespacepreceders,并且最终导致验证失败.

<?xml version="1.0" encoding="utf-8"?>
<Invoice xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"     xmlns:xsd="http://www.w3.org/2001/XMLSchema" …
Run Code Online (Sandbox Code Playgroud)

c# xml standards xsd invoices

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

为表中的所有SQL行减去相同的数字

在SQL Server 2008中,我有一个如下所示的用户表:

Userid
Username 
UserBirthYear(int)
Run Code Online (Sandbox Code Playgroud)

当用户注册页面时,她选择了她的出生年份.前程序员(当然!)让用户选择正确的年份,但插入数据库的值是DateTime.Now ...

现在我需要从coloumn UserBirthYear中的每个用户中减去并保存到数据库15年.有500,000用户.如何最好地实现这一目标?

提前致谢.

sql sql-server

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

获取"读取器关闭时无效尝试呼叫读取"

我有以下代码(这里有伪值以便于阅读),其中第一个连接返回大量数据(数千行).SqlDataReader逐个读取它们reader.Read(),然后打开一个新连接以使用新值更新每一行:

using (SqlConnection conn = new SqlConnection(connString))
    using (SqlCommand cmd = new SqlCommand("sp1", conn))
    {
        cmd.CommandType = CommandType.StoredProcedure;
        cmd.Parameters.AddWithValue("@param1", param1);
        cmd.Connection.Open();
        using (SqlDataReader reader = cmd.ExecuteReader())
        {
            while (reader.Read())
            {
                try
                {
                    string hash= utils.SHA256.Hashing((string)reader["firstRow"], saltValue);
                    using (SqlConnection conn2 = new SqlConnection(connString))
                    using (SqlCommand cmd2 = new SqlCommand("sp2", conn2))
                    {
                        cmd2.CommandType = CommandType.StoredProcedure;
                        cmd2.Parameters.AddWithValue("@param1", param1);
                        cmd2.Parameters.AddWithValue("@param2", param2);
                        cmd2.Connection.Open();
                        cmd2.ExecuteNonQuery();
                    }
                }
                catch (SqlException ex)
                {
                    //something
                }
            }
        }
    }
Run Code Online (Sandbox Code Playgroud)

但它会抛出一个错误:

[InvalidOperationException: Invalid attempt to call Read when …
Run Code Online (Sandbox Code Playgroud)

c# sql

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