Hot answers tagged wcf
18
WCF shortcuts a whole lot of things in making a web service, but if you stray too far outside it's defaults you will have some additional work (usually configuration) to do that IMHO is not documented very well.
Compared to ASMX services is can be a huge timesaver, but if you are writing REST services sometimes it is easier to use a MVC project as a ...
18
Does the business value of implementing them exceed the cost?
If you implement, you need to change not just your server, but all clients (although you can support both formats and only change clients as needed). That will take time and testing, which is a direct cost. And don't underestimate the time taken to really understand protocol buffers (especially ...
16
All those things are optional, use them if they're helpful, don't if they're not. It's as simple as that. You can certainly write good/proper web apps w/o any of those acronyms in your solution.
Personally, I tend to find MVC to be a pretty lightweight and easy to use framework (much easier to get started on than webforms, imo). Likewise, LINQ provides ...
9
User recoverable exceptions should not be "exceptions". Exceptions are for exceptional circumstances. Transposing a few letters in a form field is something that you should expect and plan for.
Part of the impetus behind a "Service-Oriented Architecture" is that services are reusable. Sure, it might be a client sending messages to it... or it might be ...
9
No, not really. LINQ is the greatest thing since sliced bread when interacting with a database.
What you should remember is that these things are built on other things. LINQ is not adding to the number of things you need to know to develop an ASP.NET website, because now you don't need to know SQL. And LINQ is OO, which is far more in line with regular ...
8
Ah yes...SOAP, the vaunted holy grail of computing. A lingua franca that promised interop between systems around the world.
And then you get into the differences between SOAP implementations on Java and PHP and .NET. Or even between the WebSphere SOAP service and the Apache SOAP client. Never mind dealing with different WS-I compatability standards. Now ...
8
I should begin by saying that WCF is the goto solution. What you mentioned above fits very well in the SOA (Service Oriented Architecture) definition, and WCF deals very well with SOA.
Implementing a single locking service application, which can then be then integrated in all your components would be ideal because:
When you update your locking and payment ...
8
i maintain apis and somebody before me added protobuf (because it was "faster"). The only thing faster is RTT because of of smaller payload, and that can be fixed with gzipped JSON.
The part that is distasteful to me is the relative work to maintain protobuf (compared to JSON). I use java so we use Jackson object mapping for JSON. Adding to a response ...
7
You are correct, in that in terms of how the code will change over time, I typically lean toward parameter wrappers so that later, when I need more information to perform the same function when adding a new feature, I can preserve signatures, and add one more property to the existing wrapper object.
When it comes to building communication contracts like you ...
6
I've done a lot of hiring for our company and to be honest, certs don't carry a lot of weight for us. If we see certs on a resume we'll make note of them, but just in passing. What we're looking for is experience. It doesn't have to be commercial experience (though that obviously carries more weight). Could be your own app using the technology, or even ...
6
So I would use the Adapter pattern here. Abstract the services to an interface that satisfies the needs of your app. And implement the details of that abstraction over the service. I would say this is a useful approach even if you're using one service because it helps avoid leaking the details of the underlying service into your application.
For example, if ...
6
By leveraging the Windows Communications Foundation framework, you can create services over a number of different network protocols. This includes HTTP, HTTPS, MSMQ, and even TCP/IP sockets. In addition to these, it also support Named Pipes for connections between two processes on the same machine.
IIS can host applications developed for WCF, even if they ...
6
iPhone developers tend to prefer json or POX style services over SOAP. WCF is capable of serving both, though you might be better served by the WCF Web API than traditional WCF if you are going that way. Another option would be straight MVC controllers taking JSON or XML or HTTP POST data.
6
Using WCF has both advantages and disadvantages compared to direct socket programming.
The main advantage is that you do not need to care about programming a server loop or communication protocol. You split your communication into function/method calls, include these functions/methods in your contract interface, create a class that implements it, ...
5
By reading your description I'm somehow afraid that one person simply cannot prepare satisfying documentation for such project unless developers already carefully comment their code by standard documentation comments. This is first step to allow new team members to use existing code base. Another step can be providing complex set of unit tests which will ...
5
In my opinion, the strongest reason to become certified is that it gives you a built-in goal for helping you learn a set of technologies. Go for it, if only for that reason.
Silverlight? Definitely.
As mentioned in a couple of other answers here, and in my experience, it does not really differentiate a good developer from an also-ran. Experience and ...
5
This one's a good book : Learning WCF: A Hands-on Guide by Michele Leroux Bustamante
Customer reviews here.
5
Just to follow-up and close out the post, with Preview 5, the WCF Web API took a huge leap forward making it incredibly simple to create REST APIs. And while the current codebase on Codeplex does not include a Silverlight client, there is a toolkit out there and I was able to easily strip out the Async-CTP parts from the open source code and create a SL ...
5
Nothing. You're still free to use WCF where it is most suitable, or at your own discretion.
ASP.NET MVC has supported a RESTful communication style since its inception, and many people use it as a thin veneer for RESTful services. That doesn't automatically cause WCF to go obsolete, or make ASP.NET MVC the One Tool to Rule Them Allâ„¢.
This is why ...
5
In my opinion, your observation is quite accurate. The high level implementations of XML based communication is usually not compatible with different platforms, even if they are both called "SOAP". Subtle differences in implementation, probably both within the scope of the standard implemented, create problems in real life use.
My recommendation for service ...
5
In answer to the 1st part of your question, I agree with your colleague's assessment that outputting JSON would be much more efficient & simple to do. (KISS principle)
Before you go ahead with WCF though, I highly recommend that you consider the excellent Service Stack - an opensource .NET & Mono REST web services framework.
The performance is ...
5
I would do those in a different order-
Firstly, I'd map my business domain, and figure out the best design to solve my business problem. This will give you your domain.
Then, Ideally in a completely different mindset, think about the requirements of your client-side and UI; what data will be displayed, and how? This will give you your DTOs.
...
4
I have read with great joy "Programming WCF services" Lowy was considered one of the leading experts ( Although I don't hear much from him now )
Als the stackoverflow question mentioned in the comments gives this book a lot of votes.
It isn't an easy book and you should try to create the samples while you read, trying it reveals the nitty picky details ...
4
You can get a practice test for this exam from Self Test Software
It's not free though and I wouldn't recommend using free ones either. They will almost certainly not be authorised by Microsoft and more than likely to be brain dumps.
If you are found to be using brain dumps for MS exams you will have your certifications revoked. Is it really worth taking ...
4
If the old concepts you mentioned didn't work any more, I would agree that would be mad, but the newer frameworks are alternatives. Blind acceptance would be mad. You need to justify. Personally, SQL in itself isn't a problem for me. Trying to add some of the functionality of modern websites, webforms isn't cutting it anymore.
I'm sure some classic ASP ...
4
You will need to write two separate parts: the service back end (which has no GUI) and the front end controller (the GUI). They will need to communicate using some form of windows interprocess communication.
Doing this as a single application may be possible, but in the windows service case it would have no GUI so still need a separate one. If you are ...
4
If you are looking for ideas about security for REST web services then look at the OpenAuth spec Appendices describing the "handshake".
http://oauth.net/core/1.0/#anchor27
Creating web services that adhere to OpenAuth standards is probably one of the more secure ways that this can be done. It can give you ideas on authentication, authorization strategies.
...
4
@tzerb has answered it correctly IMO but I wanted to extend that answer. ASP.NET Web API which is currently in beta stage and an OSS project is the closest framework that you are looking for.
The short description of the product is as follows (quoted from ASP.NET Web API page):
ASP.NET Web API is a framework that makes it easy to build HTTP
services ...
4
I have had to implement a chat service in WCF.
The main problem in my eyes was that web services are based on the HTTP query model. That means a client sends a request to the server, the server handles the request and returns the results.
Communication is always coming from the client side, but never from the server side.
In a chat scenario, this implies ...
Only top voted, non community-wiki answers of a minimum length are eligible
