Hãy thử điều này thay thế:
var responseObject = proxy.CallService(new RequestObject
{
Data = "misc. data",
Guid = new Guid.NewGuid()
});
Điều này sẽ tạo ra giá trị Hướng dẫn 'thực'. Khi bạn mới nhập loại tham chiếu, nó sẽ cung cấp cho bạn giá trị mặc định (trong trường hợp này là tất cả các số không cho Hướng dẫn).
Khi bạn tạo một Hướng dẫn mới, nó sẽ khởi tạo nó cho tất cả các số không, là giá trị mặc định cho Hướng dẫn. Về cơ bản, nó giống như việc tạo một int "mới" (là một loại giá trị nhưng bạn vẫn có thể thực hiện việc này):
Guid g1; // g1 is 00000000-0000-0000-0000-000000000000
Guid g2 = new Guid(); // g2 is 00000000-0000-0000-0000-000000000000
Guid g3 = default(Guid); // g3 is 00000000-0000-0000-0000-000000000000
Guid g4 = Guid.NewGuid(); // g4 is not all zeroes
So sánh điều này với làm điều tương tự với một int:
int i1; // i1 is 0
int i2 = new int(); // i2 is 0
int i3 = default(int); // i3 is 0