代码之家  ›  专栏  ›  技术社区  ›  Max Schmeling

如何在aspx页中将属性设置为Guid

  •  0
  • Max Schmeling  · 技术社区  · 16 年前

    我的aspx页面中有以下代码:

    <% foreach (Dependency dep in this.Common.GetDependencies(this.Request.QueryString["Name"]))
       { %>
            <ctl:DependencyEditor DependencyKey='<%= dep.Key %>' runat="server" />
    <% } %>
    

    运行时,会出现以下错误:

    Parser Error Message: Cannot create an object of type 'System.Guid' from its string representation '<%= dep.Key %>' for the 'DependencyKey' property.

    有什么方法可以创建控件并在aspx页面中传入Guid吗?我真的不想在后面的代码中循环并创建这些控件,因为。。。

    注意:依赖项对象的Key属性 一个Guid。

    4 回复  |  直到 15 年前
        1
  •  1
  •   steve_c    16 年前

    依赖项对象的键属性可能是一个Guid,但是依赖编辑器的Dependency key属性也是一个Guid吗?如果不应该这样做,则在赋值时将不会调用正确的TypeConverter。

    如果我没有错的话,您还可以使用dep.Key.ToString()。

        2
  •  0
  •   scootdawg    16 年前

    您的控件是否接受该值并假定其为GUID?你试过用这个值实例化一个GUID吗?看来这是演员的问题

        3
  •  0
  •   scootdawg    16 年前

    好吧,这是交易……试着用#符号代替=符号。我复制了你的问题,这就超越了编译问题。

    应该是这样的“<%#dep.Key%>”

    祝你好运!

        4
  •  0
  •   CRice    16 年前

    假设dep.Key是guid的字符串表示。。。DependencyKey是Guid类型的属性

        <ctl:DependencyEditor DependencyKey="<%= new Guid(dep.Key) %>" runat="server" />