2016-12-29 1 views
0

J'ai deux vues partielles nommées _centerDetails.cshtml et _centerRights.cshtml.Strurcture modèle idéal pour un projet mvc pour la manipulation de plusieurs vues partielles

Je transmets des données de centerdetails lorsque je clique sur Soumettre et que je souhaite l'afficher lorsqu'une autre vue partielle est commutée mais sans l'envoyer au serveur.

Mise à jour Question

Je trouve que ma question n'a pas été bien expliqué.

Ceci est ma classe de modèle que j'ai créé pour gérer mes données via le contrôleur.

ADWP_AdminWebPortal.Models d'espace de noms {

public class CountryList 
{ 
    [Required(ErrorMessage = "Select a Country.")] 
    public int CountryId { get; set; } 
    [Required] 
    public string Country { get; set; } 

    [Required(ErrorMessage = "Select a State.")] 
    public int StateId { get; set; } 
    [Required] 
    public string State { get; set; } 

    [Required(ErrorMessage = "Select a City.")] 
    public int CityId { get; set; } 
    [Required] 
    public string City { get; set; } 

} 

public class CustomerDetails: CountryList 
{ 

    public int ClientId { get; set; } 

    [Required (ErrorMessage="Eneter the First name")] 
    [DataType(DataType.Text)] 
    public string FirstName { get; set; } 

    [Required(ErrorMessage = "Eneter the Middle name")] 
    [DataType(DataType.Text)] 
    public string MiddleName { get; set; } 

    [Required(ErrorMessage="Please Enter Valid Mobile No")] 
    [DataType(DataType.PhoneNumber)] 
    public string MobileNo { get; set; } 

    [Required(ErrorMessage = "Please Enter Valid Mobile No")] 
    [DataType(DataType.PhoneNumber)] 
    public string MobileNo2 { get; set; } 


    [Required(ErrorMessage = "Please Enter Valid Mobile No")] 
    [DataType(DataType.PhoneNumber)] 
    public string LandLine { get; set; } 


    [Required(ErrorMessage = "Please Enter Valid Mobile No")] 
    [DataType(DataType.PhoneNumber)] 
    public string LandLine2 { get; set; } 

    [Required(ErrorMessage = "Eneter the Last name")] 
    [DataType(DataType.Text)] 
    public string LastName { get; set; } 

    public string NickName { get; set; } 

    [Required(ErrorMessage = "Enter The Address")] 
    [MaxLength(300)] 
    public string Address { get; set; } 

    [Required (ErrorMessage ="Enter the Zipcode.")] 
    [DataType(DataType.PostalCode)] 
    [Range(4,6)] 
    public string ZipCode { get; set; } 

    [Required(ErrorMessage = "Please Enter Email Id")] 
    [DataType(DataType.EmailAddress)] 
    [MaxLength(50)] 
    [RegularExpression(@"[a-z0-9._%+-][email protected][a-z0-9.-]+\.[a-z]{2,4}", ErrorMessage = "Please enter correct email")] 
    public string EmailId { get; set; } 

    [Required(ErrorMessage = "Please Enter Email Id")] 
    [DataType(DataType.EmailAddress)] 
    [MaxLength(50)] 
    [RegularExpression(@"[a-z0-9._%+-][email protected][a-z0-9.-]+\.[a-z]{2,4}", ErrorMessage = "Please enter correct email")] 

    public string ConfirmEmailId { get; set; } 

    public string RefferalId { get; set; } 

    [Required(ErrorMessage="Select Any Occupation.")] 
    public string Occupatioin { get; set; } 

    public string NatureOfOccupation { get; set; } 

    public string AgentId { get; set; } 

    [Required(ErrorMessage ="Select a Client Type.")] 
    public string ClientType { get; set; } 


    public int TariffId { get; set; } 
    public string TariffName { get; set; } 
    public int ServiceId { get; set; } 
    public string ServiceName { get; set; } 
    public string OrderId { get; set; } 
    public int PaymentMethodId { get; set; } 
    public string PaymentMethodName { get; set; } 

    } 

}

Ici vous pouvez voir le désordre que je l'ai créé. Mon problème est comment gérer plusieurs modèles lorsque vous travaillez avec plusieurs modèles dans le même contrôleur?

Ici je n'ai pas créé toutes les données dans une seule classe parce que je voulais le réutiliser selon mon besoin.

Avez-vous une idée sur la gestion des données dans un modèle? C'est le principal problème qui se pose lorsque je crée des vues partielles dans mon projet.

+0

ce qui est le résultat attendu? –

+5

Vous n'avez pas d'enregistrements en double dans votre tableau! Pensiez-vous peut-être à convertir vos tableaux dans un format conforme à la deuxième forme normale? – e4c5

+3

dans votre exemple Robin apparaît deux fois mais a 2 coûts différents (ce n'est pas en double), voulez-vous peut-être le maximum de COST? dans ce cas, il suffit d'utiliser MAX(), et de grouper par nom et type – Stephen

Répondre

1

Vous pouvez utiliser ensemble la fonction CTE et la fonction ROW_NUMBER pour supprimer les lignes en double de votre table.

With CTE AS (
    SELECT VERIFICATIONTYPE, 
      NAME, 
      COST, 
      RN = ROW_NUMBER() OVER (PARTITION BY VERIFICATIONTYPE, NAME, COST ORDER BY VERFICATIONTYPE) 
    FROM DETAILS) 
DELETE FROM CTE WHERE RN > 1 

FIN

+0

Cela ne fonctionnera pas. Merci pour votre suggestion @misterrabinhalder –

+0

Pourquoi pensez-vous que cela ne fonctionnera pas? Voulez-vous expliquer? @ rajan-mishra – misterrabinhalder