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 7017237
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 27, 20262026-05-27T22:53:18+00:00 2026-05-27T22:53:18+00:00

this is somewhat tricky to figure out I think, perhaps I am missing something.

  • 0

this is somewhat tricky to figure out I think, perhaps I am missing something.
I am a newbie trying to rig a database mapped via Linq-to-SQL to my server. There is a function called by clients which retrieves UserAccount from the database:

public static explicit operator Dictionary<byte, object>(UserAccount a)
    {
        Dictionary<byte, object>  d = new Dictionary<byte, object>();
        d.Add(0, a.AuthenticationDatas.Username);
        int charCount = a.Characters.Count;
        for (int i = 0; i < charCount; i++)
        {
            d.Add((byte)(i + 1), (Dictionary<byte, object>)a.Characters[i]);
        }
        return d;
    }

What this actually does is convert a UserAccount type to my server datatype of Dictionary. UserAccount itself is retrieved from database then converted via this function.

However when I run this function, I get InvalidCastException on line:

int charCount = a.Characters.Count;

Moreover, when VS breakpoints @ this line, I can wait a few seconds and proceed and the excpetion will be gone! It retrieves Characters.Count correctly after that.

Here is my Characters mapping:

[global::System.Data.Linq.Mapping.AssociationAttribute(Name="UserAccount_Character", Storage="_CharactersTBs", ThisKey="UID", OtherKey="UID")]
    public EntitySet<Character> Characters
    {
        get
        {
            return this._Characters;
        }
        set
        {
            this._Characters.Assign(value);
        }
    }

I believe whats happening is that request is somehow executed on another thread then the one that interacts with database, and it errors out before database can actually retrieve Characters table. I am not quite sure…

Does anyone know what the problem might be and how can I syncronize it (without adding some gimp delay)?

EDIT:

Ok I narrowed down the problem. It has nothing to do with different threads networking or what not… Its just me being stupid. Here is a simple databse query which throws InvalidCastException @ line int count = UA.Characters.Count;

static void Main(string[] args)
    {           

        IEnumerable<UserAccount> query = from p in PBZGdb.Instance.AuthenticationDatas
                                         where p.Username == "Misha" && p.Password == "123"
                                         select p.UserAccount;
        UserAccount UA = query.ElementAt(0);
        int count = UA.Characters.Count;
        Console.WriteLine(count);
        Console.ReadKey();
    }

(p.s.) UA is NOT null it indeed finds a correct instance of userAccount and it has 2 Characters. If I wait few seconds and try again exception goes away..
What am I doing wrong? This is the first time I really use a database in VS please help! 🙂

  • 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-27T22:53:19+00:00Added an answer on May 27, 2026 at 10:53 pm

    Hey just want anyone having the same problem know, I figured it out. What happened was I manualy renamed LINQ .dbml file when I added it to my project after it was geneerated by sqlmetal. And of course I did it inconsistently (it was renamed in designer but not in its .cs file). I just re-generated a new .dbml file with sqlmetal with a correct name this time and everything works like butter!

    Thanks guys!

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

This is somewhat related to the question posed in this question but I'm trying
This is somewhat tricky, assuming this scenario: <div class='top'> <div id='page1' class='in'> Mickey </div>
I am currently trying to construct a somewhat tricky MySQL Select Statement. Here is
Once and for all I want to clearify this somewhat subjective and argumentative area
Is it possible to have nested set capabilities in this somewhat custom setup? Consider
This is somewhat of a follow-up to an answer here . I have a
This is somewhat of a follow-up question to this question . Suppose I have
This is somewhat asp.net MVC related only for example purposes but I was hoping
this is somewhat of an odd question. I wrote a C function. Its 'like'
This is somewhat of a sequel to Slow Exists Check . Alex's suggestion works

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.