Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6905449
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 27, 20262026-05-27T08:11:05+00:00 2026-05-27T08:11:05+00:00

I’m working on a wiki project. MVC3 + EF4 Code First. All classes from

  • 0

I’m working on a wiki project. MVC3 + EF4 Code First.

All classes from my model inherit from a main “EditBase” class. This assures that they all have ID, Username and CreatedDate. It also helps me create a generic Repository for basic CRUDs.

I wish to define a new entity called AbuseReport to handle flagging of incorrect/innacurate content:

public class AbuseReport : EditBase
{
    public DateTime DateReported { get; set; }
    public string EntityType { get; set; }
    public int EntityId { get; set; }
    public int ReportTypeId { get; set; }
    public ReportType ReportType 
    {
        get { return (ReportType) this.ReportTypeId; }
        set { this.ReportTypeId = (int) value; }
    }
    public string Description { get; set; }
}

What would be the easiest way to retrieve an entity stored on the database starting from the information on a AbuseReport object? I can’t use foreign keys because the report can refer to any entity on the project.

I would need to call something like this:

Type modelType;
entityDictionary.TryGetValue(entityName, out modelType);
var rep = new Repository<modelType>();
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-27T08:11:05+00:00Added an answer on May 27, 2026 at 8:11 am

    I would store all the model types in the same repository. The repository key will have to contain the type of the model as well as its ID. I use the local class RepositoryKey for this purpouse:

    public class EditBase
    {
        public int ID { get; set; }
        public string Username { get; set; }
        public DateTime CreatedDate { get; set; }
    }
    
    public class Repository
    {
        private Dictionary<RepositoryKey, EditBase> _store = new Dictionary<RepositoryKey, EditBase>();
    
        public void Add(EditBase model)
        {
            _store.Add(new RepositoryKey(model), model);
        }
    
        public void Remove(EditBase model)
        {
            _store.Remove(new RepositoryKey(model));
        }
    
        public void Remove<T>(int id)
            where T : EditBase
        {
            _store.Remove(new RepositoryKey(typeof(T), id));
        }
    
        public bool TryGet<T>(int id, out T value)
            where T : EditBase
        {
            EditBase editBase;
            if (!_store.TryGetValue(new RepositoryKey(typeof(T), id), out editBase)) {
                value = null;
                return false;
            }
            value = (T)editBase;
            return true;
        }
    
        private class RepositoryKey : IEquatable<RepositoryKey>
        {
            private Type _modelType;
            private int _id;
    
            public RepositoryKey(EditBase model)
            {
                _modelType = model.GetType();
                _id = model.ID;
            }
    
            public RepositoryKey(Type modelType, int id)
            {
                _modelType = modelType;
                _id = id;
            }
    
            #region IEquatable<IdentityKey> Members
    
            public bool Equals(RepositoryKey other)
            {
                if (_modelType != other._modelType) {
                    return false;
                }
                return _id == other._id;
            }
    
            #endregion
    
            public override int GetHashCode()
            {
                return _modelType.GetHashCode() ^ _id.GetHashCode();
            }
        }
    }
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have a string like this: La Torre Eiffel paragonata all&#8217;Everest What PHP function
I have a text area in my form which accepts all possible characters from
link Im having trouble converting the html entites into html characters, (&# 8217;) i
For some reason, after submitting a string like this Jack’s Spindle from a text
I am currently running into a problem where an element is coming back from
I'm parsing an RSS feed that has an &#8217; in it. SimpleXML turns this
We're building an app, our first using Rails 3, and we're having to build
I have this code: - (void)parser:(NSXMLParser *)parser foundCDATA:(NSData *)CDATABlock { NSString *someString = [[NSString
Does anyone know how can I replace this 2 symbol below from the string
I'm trying to decode HTML entries from here NYTimes.com and I cannot figure out

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.