Hello,

Voici un problème que je ne comprends pas.

Dans le cadre d'un service WCF, j'ai les classes suivantes dans le contrat :
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
 
<DataContract()>
Public Class Ticket
    Implements DTO.DtoBase
 
    <DataMember()>
    Public Property StoreNumber As Short
    <DataMember()>
    Public Property TicketDate As Date
 
    <DataMember()>
    Public Property TillNumber As Short
 
    <DataMember()>
    Public Property TicketNumber As Short
 
    <DataMember()>
    Public Property Articles As List(Of Article)
 
    Public Sub New(storeNumber As Short, ticketDate As Date, tillNumber As Short, ticketNumber As Short)
        Me.StoreNumber = storeNumber
        Me.TicketDate = ticketDate
        Me.TillNumber = tillNumber
        Me.TicketNumber = ticketNumber
        Articles = New List(Of Article)
    End Sub
End Class
 
<DataContract()>
Public Class Article
    Implements DtoBase
    <DataMember()>
    Public Property Description As String
 
    <DataMember()>
    Public Property MerchendiseGroup As String
 
    <DataMember()>
    Public Property Ean As String
 
    <DataMember()>
    Public Property Ean2 As String
 
    <DataMember()>
    Public Property UnitPrice As Decimal
 
    <DataMember()>
    Public Property Quantity As Decimal
 
    <DataMember()>
    Public Property Gross As Decimal
 
    <DataMember()>
    Public Property Discount As Decimal
 
    <DataMember()>
    Public Property Net As Decimal
 
    <DataMember()>
    Public Property TaxPercent As Decimal
 
    <DataMember()>
    Public Property TaxAmount As Decimal
 
    <DataMember()>
    Public Property VatExcl As Decimal
 
    Public Sub New(description As String, merchendiseGroup As String, ean As String, ean2 As String, unitPrice As Decimal, quantity As Decimal, gross As Decimal, discount As Decimal,
                   net As Decimal, taxPercent As Decimal, taxAmount As Decimal, vatExcl As Decimal)
        Me.Description = description
        Me.MerchendiseGroup = merchendiseGroup
        Me.Ean = ean
        Me.Ean2 = ean2
        Me.UnitPrice = unitPrice
        Me.Quantity = quantity
        Me.Gross = gross
        Me.Discount = discount
        Me.Net = net
        Me.TaxPercent = taxPercent
        Me.TaxAmount = taxAmount
        Me.VatExcl = vatExcl
    End Sub
End Class
Côté client, j'ai donc mis une référence vers l'assembly du contrat WCF et j'ai les classes suivantes :
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
Imports System.Data.SqlClient
 
Public Class Ticket
    Inherits Contracts.Ticket
    Implements IDtoBase
 
    Public Sub New(storeNumber As Short, ticketDate As Date, tillNumber As Short, ticketNumber As Short)
        MyBase.New(storeNumber, ticketDate, tillNumber, ticketNumber)
    End Sub
End Class
 
Public Class ParserTicket
    Inherits ParserSQL
 
    Private _ordStoreNumber, _ordTicketDate, _ordTillNumber, _ordTicketNumber As Integer
 
    Public Overrides Sub PopulateOrdinals(reader As SqlDataReader)
        _ordStoreNumber = reader.GetOrdinal("STR_CODE")
        _ordTicketDate = reader.GetOrdinal("TIC_DATE")
        _ordTillNumber = reader.GetOrdinal("TIC_TILL")
        _ordTicketNumber = reader.GetOrdinal("TIC_TICKET")
    End Sub
 
    Public Overrides Function PopulateDTO(reader As SqlDataReader) As IDtoBase
        Return New Ticket(reader.GetInt16(_ordStoreNumber),
                          reader.getdatetime(_ordTicketDate),
                          reader.GetInt16(_ordTillNumber),
                          reader.GetInt16(_ordTicketNumber))
End Function
End Class
En l'état, VS me donne l'erreur suivante sur l'instanciation d'une classe Ticket dans la fonction PopulateDTO (ici juste au dessus)
Import of type 'DtoBase4 from assembly or module 'DTO.dll' failed.
Le pire, c'est que cette classe fait partie de l'assembly DTO.dll.
J'ai remarqué que si je retire le Inherits Contracts.Ticket, l'erreur disparait. Mais bien sûr, le constructeur de la classe Ticket n'est alors plus valide ^^.

J'ai demandé à google ce qu'il savait sur cette erreur mais tout ce que je trouve sont des trucs sans rapport avec ce que je semble rencontrer...

A noter que j'utilise VS2015 Pro et Resharper Ultimate 9.1.1

Quelqu'un aurait-il déjà rencontrer cela ???