Click here to Skip to main content
15,900,110 members
Home / Discussions / C#
   

C#

 
AnswerRe: C# Remote Desktop Using C# .Net Pin
OriginalGriff18-Jan-18 2:30
mveOriginalGriff18-Jan-18 2:30 
QuestionHow can I put an triangle and square shape in the center using c# in image processing Pin
Member 1363007218-Jan-18 0:41
Member 1363007218-Jan-18 0:41 
AnswerRe: How can I put an triangle and square shape in the center using c# in image processing Pin
OriginalGriff18-Jan-18 0:52
mveOriginalGriff18-Jan-18 0:52 
GeneralRe: How can I put an triangle and square shape in the center using c# in image processing Pin
Member 1363007218-Jan-18 1:09
Member 1363007218-Jan-18 1:09 
GeneralRe: How can I put an triangle and square shape in the center using c# in image processing Pin
OriginalGriff18-Jan-18 1:49
mveOriginalGriff18-Jan-18 1:49 
AnswerRe: How can I put an triangle and square shape in the center using c# in image processing Pin
V.18-Jan-18 20:18
professionalV.18-Jan-18 20:18 
QuestionHow to show customer data and order count using EF & LINQ Pin
Mou_kol17-Jan-18 23:52
Mou_kol17-Jan-18 23:52 
AnswerRe: How to show customer data and order count using EF & LINQ Pin
Pete O'Hanlon18-Jan-18 1:08
mvePete O'Hanlon18-Jan-18 1:08 
GeneralRe: How to show customer data and order count using EF & LINQ Pin
Mou_kol18-Jan-18 1:47
Mou_kol18-Jan-18 1:47 
GeneralRe: How to show customer data and order count using EF & LINQ Pin
Richard Deeming18-Jan-18 5:19
mveRichard Deeming18-Jan-18 5:19 
GeneralRe: How to show customer data and order count using EF & LINQ Pin
Mou_kol18-Jan-18 21:05
Mou_kol18-Jan-18 21:05 
QuestionDo you know C# graphic library like Qt Desiner QCostumPlot Pin
Emrah Duatepe17-Jan-18 20:15
Emrah Duatepe17-Jan-18 20:15 
QuestionHow do I open a flush from the resource folder in C # Pin
Member 1362111717-Jan-18 11:46
Member 1362111717-Jan-18 11:46 
AnswerRe: How do I open a flush from the resource folder in C # Pin
OriginalGriff17-Jan-18 20:10
mveOriginalGriff17-Jan-18 20:10 
GeneralRe: How do I open a flush from the resource folder in C # Pin
Member 1362111718-Jan-18 4:50
Member 1362111718-Jan-18 4:50 
GeneralRe: How do I open a flush from the resource folder in C # Pin
Member 1362111718-Jan-18 5:56
Member 1362111718-Jan-18 5:56 
AnswerRe: How do I open a flush from the resource folder in C # Pin
Pete O'Hanlon17-Jan-18 21:00
mvePete O'Hanlon17-Jan-18 21:00 
GeneralRe: How do I open a flush from the resource folder in C # Pin
Member 1362111718-Jan-18 4:52
Member 1362111718-Jan-18 4:52 
QuestionHow to generate auto no for property Pin
Mou_kol16-Jan-18 22:08
Mou_kol16-Jan-18 22:08 
AnswerRe: How to generate auto no for property Pin
OriginalGriff16-Jan-18 23:10
mveOriginalGriff16-Jan-18 23:10 
AnswerRe: How to generate auto no for property Pin
Jochen Arndt16-Jan-18 23:24
professionalJochen Arndt16-Jan-18 23:24 
AnswerRe: How to generate auto no for property Pin
Gerry Schmitz17-Jan-18 9:30
mveGerry Schmitz17-Jan-18 9:30 
AnswerRe: How to generate auto no for property Pin
BillWoodruff20-Jan-18 15:03
professionalBillWoodruff20-Jan-18 15:03 
GeneralRe: How to generate auto no for property Pin
Mou_kol23-Jan-18 20:59
Mou_kol23-Jan-18 20:59 
GeneralRe: How to generate auto no for property Pin
BillWoodruff23-Jan-18 23:51
professionalBillWoodruff23-Jan-18 23:51 
The context is what matters here: depending on context I might:

1. if the value of 'Id is local to the class, then a static class Int32 variable incremented in the constructor is all you need.

1.a. if you need to keep a collection of instances of 'PersonalDetail:
public class PersonalDetail
{
    public PersonalDetail(string firstName, int age)
    {
        if (IdToInstance.Any(kvp => kvp.Value.FirstName.Equals(firstName)))
        {
            throw new DuplicateNameException();
        }

        FirstName = firstName;
        Age = age;

        IdToInstance.Add(Id++, this);
    }

    public string FirstName { get; set; }
    public int Age { get; set; }

    // static constructor
    static PersonalDetail()
    {
        Id = 1;
        IdToInstance = new Dictionary<int, PersonalDetail>();
    }

    static int Id { set; get; }

    static Dictionary<int, PersonalDetail> IdToInstance { get; }

    public static void Add(params (string name, int age)[] pds)
    {
        foreach (var pd in pds)
        {
            new PersonalDetail(pd.name, pd.age);
        }
    }

    public static PersonalDetail InstanceFromId(int id)
    {
        PersonalDetail pd = null;

        return IdToInstance.TryGetValue(id, out pd) ? pd : null;
    }
}

/* usage example

// multiple instances created
// using C# 7 tuple syntax
PersonalDetail.Add(
    (name: "Tapan", age: 11), // names optional
    ("Joy", 21),
    ("Madhu", 31)
);


// test index data
var id2 = PersonalDetail.InstanceFromId(2);

// check index function won't crash on bad dara
var idbad = PersonalDetail.InstanceFromId(11);

// force error
PersonalDetail.Add(("Tapan", 200));
*/
2. if 'Id is also used by other classes, or can be changed for a given instance: for that, I would consider a static Id manager class.
«... thank the gods that they have made you superior to those events which they have not placed within your own control, rendered you accountable for that only which is within you own control For what, then, have they made you responsible? For that which is alone in your own power—a right use of things as they appear.» Discourses of Epictetus Book I:12

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.