Bonjour,
j'ai un projet de web Service avec ASP.net à terminer (il a été déjà crée et je suis en cours de terminer le travail),mon problème est que je n'arrive plus a extraire le nom de l'étudiant tapé en valeur voici le fichier service.cs que j'ai déja trouvé défini:
le fichier ProjetContext.cs (accès à la base de données):
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47 public abstract class Service<TEntity> : IService<TEntity> where TEntity : class, IObjectState ****{ ********#region Private Fields ********private readonly IRepositoryAsync<TEntity> _repository; ********#endregion Private Fields * ********#region Constructor ********protected Service(IRepositoryAsync<TEntity> repository) { _repository = repository; } ********#endregion Constructor * ********public virtual TEntity Find(params object[] keyValues) { return _repository.Find(keyValues); } * ********public virtual IQueryable<TEntity> SelectQuery(string query, params object[] parameters) { return _repository.SelectQuery(query, parameters).AsQueryable(); } * ********public virtual void Insert(TEntity entity) { _repository.Insert(entity); } * ********public virtual void InsertRange(IEnumerable<TEntity> entities) { _repository.InsertRange(entities); } * ********public virtual void InsertOrUpdateGraph(TEntity entity) { _repository.InsertOrUpdateGraph(entity); } * ********public virtual void InsertGraphRange(IEnumerable<TEntity> entities) { _repository.InsertGraphRange(entities); } * ********public virtual void Update(TEntity entity) { _repository.Update(entity); } * ********public virtual void Delete(object id) { _repository.Delete(id); } * ********public virtual void Delete(TEntity entity) { _repository.Delete(entity); } * ********public IQueryFluent<TEntity> Query() { return _repository.Query(); } * ********public virtual IQueryFluent<TEntity> Query(IQueryObject<TEntity> queryObject) { return _repository.Query(queryObject); } * ********public virtual IQueryFluent<TEntity> Query(Expression<Func<TEntity, bool>> query) { return _repository.Query(query); } * ********public virtual async Task<TEntity> FindAsync(params object[] keyValues) { return await _repository.FindAsync(keyValues); } * ********public virtual async Task<TEntity> FindAsync(CancellationToken cancellationToken, params object[] keyValues) { return await _repository.FindAsync(cancellationToken, keyValues); } * ********public virtual async Task<bool> DeleteAsync(params object[] keyValues) { return await DeleteAsync(CancellationToken.None, keyValues); } * ********//IF 04/08/2014 - Before: return await DeleteAsync(cancellationToken, keyValues); ********public virtual async Task<bool> DeleteAsync(CancellationToken cancellationToken, params object[] keyValues) { return await _repository.DeleteAsync(cancellationToken, keyValues); } * ********public IQueryable<TEntity> Queryable() { return _repository.Queryable(); } ****}
et voici mon code dans StudentsController.cs:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 public partial class ProjetContext : DataContext { static ProjetContext() { Database.SetInitializer<SMAContext>(new ProjetInitialize()); } public ProjetContext() : base("Name=ProjetContext") { } public DbSet<Student> Students { get; set; } }
or j'ai l'erreur suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 private static ProjetContext cc = new ProjetContext(); //Get Student by FirstName [Route("api/Students/{name:alpha}")] public Student Get(string name) { try { string query = from Students in cc.Students where Students.FirstName.Contains(name) select Students.FirstName; return _StudentService.SelectQuery(query,name).ToList(); //erreur dans ce ligne } catch (Exception ex) { throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound, ex.Message)); } }
voici le fichier Model Student.cs:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Cannot implicitly convert type 'System.Collection.Generic.List<Projet.Entities.Models.Student> ' to 'SMA.Entities.Models.Student'
et le fichier d'initialisation de la base de données ProjetInitialize.cs:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 public partial class Student : BaseEntity ****{ ******* ********public string FirstName { get; set; } ********public string LastName { get; set; } * **public Student() ********{ ************Marks = new List<Mark>(); ************StudentComments = new List<StudentComment>(); ********} * ********public Student(string Firstname) ********{ ************this.FirstName = FirstName; ************Marks = new List<Mark>(); ************StudentComments = new List<StudentComment>(); ********} ****}
comment je peux s'il vous plaît résoudre le problème et récupérer le "FirstName" et le "LastName" de Student selon le champ mis en valeur dans la requête "name" dans le studentController
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 var Students = new List<Student> ************{ ************new Student{FirstName="sam", LastName="9"}, ************}
merci pour l'aide
Partager