小编Nev*_*ver的帖子

使用Mongoid从同一模型中嵌入_many和embeds_one

我有两个模型,博客和主题.博客embeds_many:主题和主题embedded_in:博客.我还有Blog embeds_one:theme(用于激活的主题).这不起作用.创建主题时blog.themes.create,不存储主题.如果我更改了集合,那么它们就不会被嵌入,一切正常.

# This does NOT work!
class Blog
  embeds_many :themes
  embeds_one  :theme
end

class Theme
  embedded_in :blog
end
Run Code Online (Sandbox Code Playgroud)

# This DOES work!
class Blog
  has_many :themes
  has_one  :theme
end

class Theme
  belongs_to :blog
end
Run Code Online (Sandbox Code Playgroud)

有谁知道这是为什么?

UPDATE

将主题之一分配给(选定)主题也存在问题.

blog.themes = [theme_1, theme_2]
blog.save!

blog.theme = blog.themes.first
blog.save!

blog.reload
blog.theme # returns nil
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails mongodb mongoid

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

C# - 将 Int 转换为 KeyValue 再转换为 String

我在文件中有一个键值。如何将该值转换为表示该键的字符串?

当我有活动时:

  void text_KeyDown(Object sender, KeyEventArgs e)
        {
            this.text_button.Clear();
            this.text_button.Text = e.KeyValue.ToString();
        }
Run Code Online (Sandbox Code Playgroud)

我做这个。但现在我没有 KeyEventArgs,而是 int。

那么,如何将int转KeyValue转string呢?:/

感谢您的阅读,您好!

c# string int key-value

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

LINQ to XML至少有一个对象必须实现IComparable

我想从我的XML文件中获取最高属性"ID".

我的代码:

    var doc = XElement.Load("invoices.xml");

    var q = (from f in doc.Element("ListOfInvoices").Elements("Invoice")
             orderby f.Attributes("ID") descending
             select f.Attribute("ID")).FirstOrDefault();
Run Code Online (Sandbox Code Playgroud)

在我的XML文件中,其中一个发票代码有效,但是当例如2发票时,我有一个错误:

至少有一个对象必须实现IComparable.

xml linq

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

StyleSelector和XAML的返回样式

我在XAML中创建了一个样式,如何在样式选择器(代码)中返回此样式?

我在XAML中创建了样式,我想只返回在XAML中声明的样式.

wpf styles

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

SimpleMembershipProvider - 密码加密

我使用SimpleMembershipProvider作为我的数据库提供程序.

我已经添加了新功能来通过继承改进此提供程序.

现在我想创建一个像"ChangeEmail"这样的函数,但在此之前检查输入的密码是否正确.

所以我必须加密输入的密码并将结果与​​我的数据库中的条目进行比较.

问题是:

SimpleMembershipProvider以什么方式加密密码?

我试过了:

Crypto.HashPassword(currentPassword);
Run Code Online (Sandbox Code Playgroud)

结果在数据库中类似但不一样.

PasswordFormat属性设置为MembershipPasswordFormat.Hashed.

例如,注册时生成的"123456"哈希:

AIYlAKcmDaABMw1PVx1kheZq2KXkhVs4QjO7MnwfHPcTBjnmRobRqJzWYHYO/S4T7w==
Run Code Online (Sandbox Code Playgroud)

这通过Crypto.HashPassword:

AG+md+0W2EuV9BzUdohkYMK547jB5ochvxeVKYQTkls0UQ+3W0BWPHnFoffiIn2byw==
Run Code Online (Sandbox Code Playgroud)

它看起来像是相同类型的编码,但为什么结果不同?

c# authentication encryption asp.net-mvc

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