Git Product home page Git Product logo

Comments (6)

tallalkazmi avatar tallalkazmi commented on June 26, 2024

I am not able to commit changes. Here are the changes which i did to make it work:

`
public static TableName GetTableName(this DbContext ctx, Type t)
{
var dbSet = ctx.Set(t);
var sql = dbSet.ToString();

        //Gives empty tablename
        //var regex = new Regex(@"FROM (?<table>[\[\w@$#_\. \]]+) AS \[\w+\]$");

        //Simplified Regex to get everything between FROM and first occurrence of AS then trim the string value.
        var regex = new Regex(@"FROM(?<table>.*?)AS");
        var match = regex.Match(sql);
        var name = match.Groups["table"].Value.Trim();

        //Added empty tablename exception handling.
        if(string.IsNullOrWhiteSpace(name))
            throw new ArgumentException($"Failed to parse tablename. Bulk operation failed.");

        var n = name.Replace("[", "").Replace("]", "");
        var m = Regex.Match(n, @"(.*)\.(.*)");
        if (m.Success)
        {
            return new TableName { Schema = m.Groups[1].Value, Name = m.Groups[2].Value };
        }

        m = Regex.Match(n, @"(.*)");
        if (m.Success)
        {
            return new TableName { Schema = "dbo", Name = m.Groups[1].Value };
        }

        throw new ArgumentException($"Failed to parse tablename {name}. Bulk operation failed.");
    }

`

from ef-bulk-operations.

mtanneryd avatar mtanneryd commented on June 26, 2024

from ef-bulk-operations.

mtanneryd avatar mtanneryd commented on June 26, 2024

Tallal Kazmi, which version are you using?

from ef-bulk-operations.

tallalkazmi avatar tallalkazmi commented on June 26, 2024

The latest one. 1.3.0
https://www.nuget.org/packages/Tanneryd.BulkOperations.EF6/

from ef-bulk-operations.

mtanneryd avatar mtanneryd commented on June 26, 2024

from ef-bulk-operations.

tallalkazmi avatar tallalkazmi commented on June 26, 2024

Yes, the 1.3.1-beta1 fixes the issue. You can move to an official 1.3.1 so I can too move my code to production. Thanks for your prompt response and a great library.

from ef-bulk-operations.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.