小编Mik*_*ike的帖子

将函数应用于列表的某些元素

我有一个复杂对象列表,即

class MyObject 
{
    public bool selected;
    public int id;
    public string name;
}

List<MyObject> theObjects = functionThatSelectsObjectsFromContainer();
Run Code Online (Sandbox Code Playgroud)

我有一个来自另一个源的列表,它只是给我对象列表中的int id

List<int> idList = functionThatReturnsListOfIds();
Run Code Online (Sandbox Code Playgroud)

现在对于idList中的每个项目,我想将selected属性设置为true.我知道我可以设置一个列表的foreach,然后在另一个列表中搜索匹配项并设置它,但我想知道是否有更快的方式.

c# list

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

在DataGridView中显示导航属性的属性(第二级属性)

我正在尝试DataGridView应用程序中显示来自相关实体的多个属性.这对我来说似乎很平常,但我很难找到例子.这是订单输入操作.OrderSheet数据,订单的ID和取件日期,然后是网格中的行项目(下面的模型中的OrderSheetItems).订单lineitems具有基于ProductId的导航属性Product.我可以将DataGridViewComboBoxColumn与ProductId一起用作ValueMember,将另一个字段用作DisplayMember.但我想在其他列,大小,颜色,材料等中包含更多数据.

带有相关产品的OrderSheet和OrderSheetItems

订单输入

这是加载数据的代码

try
{
    _context.OrderSheets.Include(o => o.OrderSheetItems.Select(i => i.Product)).Load();
    orderSheetBindingSource.DataSource = _context.OrderSheets.Local.ToBindingList();
}
catch (Exception ex)...
Run Code Online (Sandbox Code Playgroud)

ProductId位于一个单独的列中,仅用于实验,稍后将是组合框.那么有没有办法将其他列绑定到OrderSheetItem的Product导航属性中的数据,或者我是否必须在产品ID上处理CellValueChanged以在其他列中物理设置数据?如果有一种方法来绑定列,那么是通过OnLoad中的代码还是网格视图列设计器中的某个位置?

TIA,迈克

.net c# entity-framework datagridview winforms

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

Swift 3改为NSErrorPointer?

我有用于SwiftyJSON的代码,我正在尝试使用XCode 8.0 Beta 3更新到Swift 3.我遇到了一个问题,编译器不喜欢参数'错误:&err',因为它做了之前.我一直在寻找如何正确传递NSErrorPointer但我发现的所有内容都说要重写,省略错误并抛出错误.由于这不是我的代码,我宁愿保持原样.那么使用NSErrorPointer的正确新方法是什么?

var err : NSError?
// code to get jsonData from file
let json = JSON(data: jsonData, options: JSONSerialization.ReadingOptions.allowFragments, error: &err)
if err != nil {
   // do something with the error
} else {
    return json
}
Run Code Online (Sandbox Code Playgroud)

上面的代码导致编译器错误:'&'只能立即出现在调用参数列表中.我已经尝试创建一个NSErrorPointer,所以我可以使用它,但我找不到任何关于如何初始化一个(类型别名声明是不够的).我已经使用Swift与Cocoa和Obj-C,它不包含单词NSErrorPointer,而是重复抛出错误的新方法.我还查看了几十个帖子都使用&err所以显然这是Swift 3的新功能.

那里有人解决了这个问题吗?使用NSErrorPointer的答案是什么?

谢谢,迈克

error-handling swift swift3

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

将 AWS CloudFront 连接到单点登录 (SSO)

我正在开发一个使用 S3 作为存储和 CloudFront CDN 部署到 AWS 的网站。它是一个静态网站,只有一个 html 文件,使用 JS 根据查询字符串显示内容。所有者是一家已经在其组织内建立了 SSO 的企业,他们使用 IBM Tivoli 作为 IdP。我缺少的部分是如何生成授权请求?

我读过这些:

http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers.html http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_saml.html http://docs.aws。 amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp.html http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp_saml.html http://docs.aws.amazon.com/ IAM/latest/UserGuide/id_roles_providers_create_saml.html http://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_saml_relying-party.html

其中许多都很接近,但偏离了目标。它不是 EC2 实例,也不是 Elastic Beanstalk,我没有尝试访问 AWS 控制台,而且他们不使用 AD 进行 SSO。这只是一个网站。

到目前为止我有:

  • 在 AWS 中创建 SAML 提供商并从其 IdP 导入元数据
  • 创建了 IAM 角色
  • 建立角色和提供者之间的信任关系
  • 为角色建立了 s3:getObject 权限
  • 向他们提供来自 AWS 的元数据以及需要提供的 SAML 断言的详细信息。

我的问题是两侧如何连接。当有人尝试访问该站点时,AWS 会自动执行此操作吗?企业是否在其门户中创建特殊链接来启动带有 SAML 的站点?如果用户只在浏览器中输入域名会发生什么?网站需要添加代码吗?

蒂亚,迈克

amazon-s3 amazon-web-services single-sign-on saml-2.0

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

OData v4 扩展语法返回错误“...不能在 $expand 查询选项中使用属性 'ProductType'。”

我有一个新的 OData V4 服务,我正在尝试运行该服务,但我看到了意外错误...

“不能在 $expand 查询选项中使用属性 'ProductType'。”

我在另一个 OData 服务中没有遇到这个问题,我一直在比较两者,我找不到两个 WRT 模型中项目的设置和 WebApiConfig 之间的显着差异。我按照文章create-an-odata-v4-endpoint 中列出的示例构建了这个,而另一个是使用脚手架向导创建的。

这是表、控制器和 WebApiConfig 的布局。我还可以在哪里寻找无法联系背后的原因?

在此处输入图片说明

// Product.cs
public partial class Product
{
    public int ProductId { get; set; }
    public int ProductTypeId { get; set; }
    public string Size { get; set; }
    public string PartNo { get; set; }

    public virtual ProductType ProductType { get; set; }
}

// ProductType.cs
public partial class ProductType{
    [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2214:DoNotCallOverridableMethodsInConstructors")]    public     ProductType()
    {
        this.Products = new HashSet<Product>(); …
Run Code Online (Sandbox Code Playgroud)

c# odata

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