Click here to Skip to main content
15,892,965 members
Home / Discussions / C#
   

C#

 
QuestionSystem.Web.Services.Protocols.SoapException: Format of the initialization string does not conform to specification starting at index 97. Pin
Member 1474982719-Feb-20 15:36
Member 1474982719-Feb-20 15:36 
QuestionHow to do left and inner join in same query Pin
Mou_kol19-Feb-20 9:34
Mou_kol19-Feb-20 9:34 
AnswerRe: How to do left and inner join in same query Pin
Gerry Schmitz19-Feb-20 12:13
mveGerry Schmitz19-Feb-20 12:13 
GeneralRe: How to do left and inner join in same query Pin
Mou_kol21-Feb-20 22:42
Mou_kol21-Feb-20 22:42 
QuestionBest deployment guide for our winform application using CI/CD Pin
Mou_kol18-Feb-20 8:24
Mou_kol18-Feb-20 8:24 
AnswerRe: Best deployment guide for our winform application using CI/CD Pin
Richard MacCutchan18-Feb-20 10:25
mveRichard MacCutchan18-Feb-20 10:25 
QuestionSystem.FormatException: 'Input string was not in a correct format. Pin
OsvaldoFernandoQueta17-Feb-20 17:43
OsvaldoFernandoQueta17-Feb-20 17:43 
AnswerRe: System.FormatException: 'Input string was not in a correct format. Pin
OriginalGriff17-Feb-20 20:35
mveOriginalGriff17-Feb-20 20:35 
GeneralRe: System.FormatException: 'Input string was not in a correct format. Pin
kalberts17-Feb-20 23:17
kalberts17-Feb-20 23:17 
QuestionI want to open PDF-file on winforms axAcroPDF1.src (Adobe Reader) Pin
Member 1462552315-Feb-20 1:32
Member 1462552315-Feb-20 1:32 
AnswerRe: I want to open PDF-file on winforms axAcroPDF1.src (Adobe Reader) Pin
Eddy Vluggen15-Feb-20 2:59
professionalEddy Vluggen15-Feb-20 2:59 
QuestionDifferent value from input Pin
chipp_zanuff14-Feb-20 6:15
chipp_zanuff14-Feb-20 6:15 
AnswerRe: Different value from input Pin
OriginalGriff14-Feb-20 6:32
mveOriginalGriff14-Feb-20 6:32 
GeneralRe: Different value from input Pin
chipp_zanuff14-Feb-20 17:48
chipp_zanuff14-Feb-20 17:48 
GeneralRe: Different value from input Pin
OriginalGriff14-Feb-20 20:21
mveOriginalGriff14-Feb-20 20:21 
AnswerRe: Different value from input Pin
Eddy Vluggen14-Feb-20 6:35
professionalEddy Vluggen14-Feb-20 6:35 
Questionauto fill data by using 3 layer in aso.net c# Pin
Member 1474357913-Feb-20 22:47
Member 1474357913-Feb-20 22:47 
AnswerRe: auto fill data by using 3 layer in aso.net c# Pin
OriginalGriff13-Feb-20 23:39
mveOriginalGriff13-Feb-20 23:39 
QuestionWhat is the correct way to do Business Validation on entities? Pin
Bastien Vandamme11-Feb-20 15:00
Bastien Vandamme11-Feb-20 15:00 
Hi,

What is the correct way to do Business Validation on entities with Entity Framework 6. By business Validation I mean validation that require more than one entity in process with, sometime, a little more complex rules that involve all these entities. A validation that require the system to call he database.

I already checked this post:
ScottGu's Blog - Class-Level Model Validation with EF Code First and ASP.NET MVC 3

But, like most example about EF and validation all validations are limited to simple check that consider only the current entity. I need to do some check based on other entities.

Example: I have a order entity that contain a quantity of product but this quantity must be a multiple of a variable stored in my item entity. This is what I call the business validation. To perform this validation on order I need to go in database and check the item selected for this order.
C#
public class Order : IValidateObject
{
    public int Id { get; set; }
    public int ItemId { get; set; }
    public int Quantity { get; set; }

    public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
    {
        var item = DbContext.Items.Find(ItemId); // <-- What about this?
        if (Quantity % item.Multiple != 0)
            yield return new ValidationResult("Quantity not multiple of item", new[] {Quantity});
    }
}

public class Item
{
    public int Id { get; set; }
    public int Multiple { get; set; }
}

How should I implement this kind of business validation that require other entities? I'm more looking for a good tutorial about this subject. I search but each time I think I find the subject the tutorial is limited to classic validation with Data Annotation or other type of classic validation.

Maybe you will juste tell me there is no problem to class my context in the Validate method. It is just that most of tutorial separate the entity layer from the context layer suggesting entities must only be simple POCO with no behavior. I most and most disagree with this but I feel alone.
AnswerRe: What is the correct way to do Business Validation on entities? Pin
Gerry Schmitz11-Feb-20 19:48
mveGerry Schmitz11-Feb-20 19:48 
GeneralRe: What is the correct way to do Business Validation on entities? Pin
Richard Deeming11-Feb-20 23:47
mveRichard Deeming11-Feb-20 23:47 
GeneralRe: What is the correct way to do Business Validation on entities? Pin
Gerry Schmitz12-Feb-20 2:16
mveGerry Schmitz12-Feb-20 2:16 
GeneralRe: What is the correct way to do Business Validation on entities? Pin
Richard Deeming12-Feb-20 2:30
mveRichard Deeming12-Feb-20 2:30 
GeneralRe: What is the correct way to do Business Validation on entities? Pin
Gerry Schmitz12-Feb-20 2:42
mveGerry Schmitz12-Feb-20 2:42 
GeneralRe: What is the correct way to do Business Validation on entities? Pin
Richard Deeming12-Feb-20 2:52
mveRichard Deeming12-Feb-20 2:52 

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.