using System.Collections.Generic;
public Right(string id,string name,string service_prefix){
this.service_prefix = service_prefix;
public string id{get;set;}
public string name{get;set;}
public string service_prefix{get;set;}
public bool assigned{get;set;}=false;
public override bool Equals(object obj){
if (obj == null) return false;
return Equals(obj as Right);
public bool Equals(Right other){
if (other == null) return false;
return (this.id.Equals(other.id));
public static void Main()
Console.WriteLine("Hello World");
List<Right> availableRights = new List<Right>();
availableRights.Add(new Right("123","right1","/a/b/c"));
availableRights.Add(new Right("124","right2","/a/b/d"));
availableRights.Add(new Right("125","right3","/a/b/e"));
availableRights.Add(new Right("126","right4","/a/b/f"));
List<Right> userRights = new List<Right>();
userRights.Add(new Right("123","right1","/a/b/c"));
userRights.Add(new Right("126","right4","/a/b/f"));
foreach(var r in availableRights){
if(userRights.Contains(r)){
foreach(var r in availableRights){
Console.WriteLine($"{r.id},{r.assigned}");