For those who have the same problem,
I had defined my svc file like this:
<![CDATA[<%@ ServiceHost Language="C#"
Debug="true"
Service="ServiceName"
CodeBehind="~/App_Code/ServiceName.cs"
Factory="System.ServiceModel.Activation.WebServiceHostFactory"
%>]]>
by doing this, It seems IIS (or ...) activates my service even if I don't have any configuration in my web.config! So the I removed the Factory=".." from the svc file. by doing this, I have to define it in the config file otherwise it will not work, so I added this extra lines to my config files:
<servicehostingenvironment aspnetcompatibilityenabled="true">
<serviceactivations>
<add relativeaddress="ServiceName.svc" service="ServiceName" factory="System.ServiceModel.Activation.WebServiceHostFactory" />
</serviceactivations>
</servicehostingenvironment>
Now every thing is fine, when ever I want to disable this service, I can remove the related settings in the config file!
Thank you.