按照我在下面的代码中的方式定义参数的默认值是否合法?它不断抛出“输入字符串格式不正确”。我的错误。
我应该采取不同的方式吗?
<asp:LinqDataSource ID="lds_numbers" runat="server" ContextTypeName="nrm.prop.myDataContext"
TableName="Sources" Where="myNumber== @myNumber" EnableDelete="True"
EnableInsert="True" EnableUpdate="True">
<WhereParameters>
<asp:Parameter DefaultValue='<%= this.StateItems["myNumber"] %>' Name="myNumber" Type="Int32" />
</WhereParameters>
.
.
.
答案 0 :(得分:1)
通过在后面的代码中设置PageLoad事件中的默认值找到解决方法。
protected void Page_Load(object sender, EventArgs e)
{
lds_numbers.InsertParameters[0].DefaultValue = this.StateItems["myNumber"].ToString();
lds_numbers.WhereParameters[0].DefaultValue = this.StateItems["myNumber"].ToString();
}
答案 1 :(得分:0)
我将使用参数MyNumber创建一个存储过程,将其拖放到图表中。比你需要将返回类型设置为“Sources”。 比起DataContext.SelectSources(5);
执行它更容易和原生