Zhu Wenxi - What do you exactly mean by disabling the gateway ? You don't want to see the gateway at all ?
I tried this but on some other SDK and hoping this part is same in all the SDK .So for example in JAVA SDK "ClientConfigurator" class is responsible for all these settings and even you don't set the sdk gateway name while connecting it to ThingWorx ,still gateway will appear in remote thing with a default name .So as per my knowledge we can not remove the gateway ,still can you elaborate about the use case ,why do you want to to remove/disable gateway from Remote thing ?
Zhu Wenxi just for the clarity are you using both C EDGE SDK and EMS? From the description it looks like you are using EMS if so do you have gateway enabled in the auto-bind section something like this?
With gateway property set to false it shouldn't create ephemeral GatewayThing
'config.json' is not part of .NET EMS sdk.
But I finally find the solution.
First, do not set a name to clientConfigurator instance, kepp clientConfigurator.Name to empty.
second, set clientConfigurator's type to empty, clientConfigurator.setType("").
After this, the client do not bind himselef as a thing.
Zhu Wenxi it sounds like you are not using EMS after all (may be you have your own custom EMS?). You're likely only working with .NET SDK else config.json would be available to you for editing.
Anyhow, good to know that the issue is now resolved